/*! For license information please see smartplayer.js.LICENSE.txt */ (()=>{var r={18:(e,t,r)=>{function s(e,t){var r,i=a(b,this);return o?r=o(new v,i?n(this):b):(r=i?this:h(b),d(r,m,"Error")),void 0!==t&&d(r,"message",g(t)),f(r,s,r.stack,1),2{r=r(5630);t.f=r},32:e=>{e.exports={}},38:(e,t,r)=>{function i(o){return function(e,t,r){var i=l(e),s=d(i);if(0!==s){var a,n=h(r,s);if(o&&t!=t){for(;n{var r=TypeError;e.exports=function(e,t){if(e{if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==r.g)return r.g;throw new Error("unable to locate global object")})()).Promise?v.Promise=h:(v.Promise.prototype.finally||(v.Promise.prototype.finally=i),v.Promise.allSettled||(v.Promise.allSettled=s),v.Promise.any||(v.Promise.any=a))},140:(e,t,r)=>{var i=r(8909),s=r(4268),r=r(8615),a=r.Set,r=r.proto,n=i(r.forEach),o=i(r.keys),l=o(new a).next;e.exports=function(e,t,r){return r?s({iterator:o(e),next:l},t):n(e,t)}},181:(e,t,r)=>{r=r(8968);e.exports=/web0s(?!.*chrome)/i.test(r)},213:(e,t,r)=>{r=r(8909);e.exports=r([].slice)},223:(e,t,r)=>{var i=r(2681),s=r(8744),a=r(5374).f,r=r(2188).f,i=i.Symbol;s("asyncDispose"),i&&(s=r(i,"asyncDispose")).enumerable&&s.configurable&&s.writable&&a(i,"asyncDispose",{value:s.value,enumerable:!1,configurable:!1,writable:!1})},240:(e,t)=>{t.f=Object.getOwnPropertySymbols},328:(e,t,r)=>{function i(e){var r,i;this.promise=new e(function(e,t){if(void 0!==r||void 0!==i)throw new a("Bad Promise constructor");r=e,i=t}),this.resolve=s(r),this.reject=s(i)}var s=r(8797),a=TypeError;e.exports.f=function(e){return new i(e)}},388:(e,t,r)=>{function i(u){var f=1===u,p=2===u,g=3===u,m=4===u,v=6===u,y=7===u,b=5===u||v;return function(e,t,r,i){for(var s,a,n=_(e),o=T(n),l=S(o),h=E(t,r),d=0,t=i||A,c=f?t(e,l):p||y?t(e,0):void 0;d{var s=r(473);e.exports=function(e,t,r){for(var i in t)s(e,i,t[i],r);return e}},451:(e,t,r)=>{var i=r(3113),s=r(8109);i({target:"Set",proto:!0,real:!0,forced:!r(5731)("isSubsetOf",function(e){return e})},{isSubsetOf:s})},473:(e,t,r)=>{var n=r(3984),o=r(5374),l=r(4638),h=r(4290);e.exports=function(e,t,r,i){var s=(i=i||{}).enumerable,a=void 0!==i.name?i.name:t;if(n(r)&&l(r,a,i),i.global)s?e[t]=r:h(t,r);else{try{i.unsafe?e[t]&&(s=!0):delete e[t]}catch(e){}s?e[t]=r:o.f(e,t,{value:r,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return e}},540:(e,t,r)=>{var i=r(4672),s=r(8909),a=r(4753),n=r(240),o=r(1182),l=s([].concat);e.exports=i("Reflect","ownKeys")||function(e){var t=a.f(o(e)),r=n.f;return r?l(t,r(e)):t}},549:(e,t,r)=>{r=r(2884);e.exports=r&&!!Symbol.for&&!!Symbol.keyFor},574:(e,t,r)=>{var i=r(3113),s=r(2681),a=r(8458),n=r(213),o=r(328),l=r(8797),h=r(8486),d=s.Promise,c=!1;i({target:"Promise",stat:!0,forced:!d||!d.try||h(function(){d.try(function(e){c=8===e},8)}).error||!c},{try:function(e){var t=1{r=r(9358);e.exports=r(function(){var e;"function"==typeof ArrayBuffer&&(e=new ArrayBuffer(8),Object.isExtensible(e))&&Object.defineProperty(e,"a",{value:8})})},814:(e,t,r)=>{r(1531)("Set",function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},r(3467))},863:e=>{e.exports={name:"memoryStorage",read:function(e){return r[e]},write:function(e,t){r[e]=t},each:function(e){for(var t in r)r.hasOwnProperty(t)&&e(r[t],t)},remove:function(e){delete r[e]},clearAll:function(e){r={}}};var r={}},903:(e,t,r)=>{var i=r(3758),s=r(2604);e.exports=function(e){e=i(e,"string");return s(e)?e:e+""}},1060:(e,t,r)=>{var i=r(6683);e.exports=function(e){return i(e)||null===e}},1086:(e,t,r)=>{var i=r(6362);e.exports=function(e,t){return i[e]||(i[e]=t||{})}},1089:(e,t,r)=>{r=r(2681);e.exports=r.Promise},1098:(e,t,r)=>{function i(e){h(e,m,{value:{objectID:"O"+v++,weakData:{}}})}var n=r(3113),o=r(8909),s=r(32),a=r(6683),l=r(9158),h=r(5374).f,d=r(4753),c=r(2657),u=r(2675),f=r(3837),p=r(2331),g=!1,m=f("meta"),v=0,y=e.exports={enable:function(){y.enable=function(){},g=!0;var s=d.f,a=o([].splice),e={};e[m]=1,s(e).length&&(d.f=function(e){for(var t=s(e),r=0,i=t.length;r{r(7044),r(5287),r(6249),r(1315),r(2686)},1125:(e,t,r)=>{var i=r(6863),s=r(7694);e.exports=Object.keys||function(e){return i(e,s)}},1182:(e,t,r)=>{var i=r(6683),s=String,a=TypeError;e.exports=function(e){if(i(e))return e;throw new a(s(e)+" is not an object")}},1224:(e,t,r)=>{r(8744)("replace")},1315:(e,t,r)=>{function s(e,t){var r=f(arguments),i=p(t);if(c(i)||void 0!==e&&!u(e))return r[1]=function(e,t){if(c(i)&&(t=l(i,this,g(e),t)),!u(t))return t},o(m,null,r)}function a(e,t,r){var i=y(r,t-1),r=y(r,t+1);return v(S,e)&&!v(A,r)||v(A,e)&&!v(S,i)?"\\u"+T(b(e,0),16):e}var i=r(3113),n=r(4672),o=r(8458),l=r(8140),h=r(8909),d=r(9358),c=r(3984),u=r(2604),f=r(213),p=r(1754),r=r(2884),g=String,m=n("JSON","stringify"),v=h(/./.exec),y=h("".charAt),b=h("".charCodeAt),E=h("".replace),T=h(1.1.toString),_=/[\uD800-\uDFFF]/g,S=/^[\uD800-\uDBFF]$/,A=/^[\uDC00-\uDFFF]$/,w=!r||d(function(){var e=n("Symbol")("stringify detection");return"[null]"!==m([e])||"{}"!==m({a:e})||"{}"!==m(Object(e))}),L=d(function(){return'"\\udf06\\ud834"'!==m("\udf06\ud834")||'"\\udead"'!==m("\udead")});m&&i({target:"JSON",stat:!0,arity:3,forced:w||L},{stringify:function(e,t,r){var i=f(arguments),i=o(w?s:m,null,i);return L&&"string"==typeof i?E(i,_,a):i}})},1357:(e,t,r)=>{function i(e,t){return(e=l[o(e)])===d||e!==h&&(a(t)?s(t):!!t)}var s=r(9358),a=r(3984),n=/#|\.prototype\./,o=i.normalize=function(e){return String(e).replace(n,".").toLowerCase()},l=i.data={},h=i.NATIVE="N",d=i.POLYFILL="P";e.exports=i},1368:(e,t,r)=>{r=r(6058);e.exports="NODE"===r},1386:(e,t,r)=>{function i(e,t){this.set=e,this.size=u(t,0),this.has=s(e.has),this.keys=s(e.keys)}var s=r(8797),a=r(1182),n=r(8140),o=r(4132),l=r(8078),h="Invalid size",d=RangeError,c=TypeError,u=Math.max;i.prototype={getIterator:function(){return l(a(n(this.keys,this.set)))},includes:function(e){return n(this.has,this.set,e)}},e.exports=function(e){a(e);var t=+e.size;if(t!=t)throw new c(h);t=o(t);if(t<0)throw new d(h);return new i(e,t)}},1445:(e,t,r)=>{var i=r(8222),s=r(5778),a=TypeError;e.exports=function(e){if(i(e))return e;throw new a(s(e)+" is not a constructor")}},1480:(e,t,r)=>{var i=r(2972),s=r(4857);e.exports=function(e){return i(s(e))}},1516:(e,t,r)=>{r(18)},1526:(e,t,r)=>{var i=r(6738),s=String;e.exports=function(e){if("Symbol"===i(e))throw new TypeError("Cannot convert a Symbol value to a string");return s(e)}},1531:(e,t,r)=>{var m=r(3113),v=r(2681),y=r(8909),b=r(1357),E=r(473),T=r(1098),_=r(3301),S=r(6586),A=r(3984),w=r(2850),L=r(6683),k=r(9358),R=r(3831),I=r(3606),C=r(9666);e.exports=function(e,t,r){function i(e){var r=y(f[e]);E(f,e,"add"===e?function(e){return r(this,0===e?0:e),this}:"delete"===e?function(e){return!(d&&!L(e))&&r(this,0===e?0:e)}:"get"===e?function(e){return d&&!L(e)?void 0:r(this,0===e?0:e)}:"has"===e?function(e){return!(d&&!L(e))&&r(this,0===e?0:e)}:function(e,t){return r(this,0===e?0:e,t),this})}var s,a,n,o,l,h=-1!==e.indexOf("Map"),d=-1!==e.indexOf("Weak"),c=h?"set":"add",u=v[e],f=u&&u.prototype,p=u,g={};return b(e,!A(u)||!(d||f.forEach&&!k(function(){(new u).entries().next()})))?(p=r.getConstructor(t,e,h,c),T.enable()):b(e,!0)&&(a=(s=new p)[c](d?{}:-0,1)!==s,n=k(function(){s.has(1)}),o=R(function(e){new u(e)}),l=!d&&k(function(){for(var e=new u,t=5;t--;)e[c](t,t);return!e.has(-0)}),o||(((p=t(function(e,t){S(e,f);e=C(new u,e,p);return w(t)||_(t,e[c],{that:e,AS_ENTRIES:h}),e})).prototype=f).constructor=p),(n||l)&&(i("delete"),i("has"),h)&&i("get"),(l||a)&&i(c),d)&&f.clear&&delete f.clear,m({global:!0,constructor:!0,forced:(g[e]=p)!==u},g),I(p,e),d||r.setStrong(p,e,h),p}},1658:(e,t,r)=>{var i=r(9358),s=r(4103);e.exports=!i(function(){var e=new Error("a");return!("stack"in e)||(Object.defineProperty(e,"stack",s(1,7)),7!==e.stack)})},1744:(e,t,r)=>{var r=r(8909),i=Error,s=r("".replace),r=String(new i("zxcasd").stack),a=/\n\s*at [^:]*:[^\n]*/,n=a.test(r);e.exports=function(e,t){if(n&&"string"==typeof e&&!i.prepareStackTrace)for(;t--;)e=s(e,a,"");return e}},1754:(e,t,r)=>{var i=r(8909),o=r(5499),l=r(3984),h=r(7221),d=r(1526),c=i([].push);e.exports=function(e){if(l(e))return e;if(o(e)){for(var t=e.length,i=[],r=0;r{r(8262);r=r(3260);e.exports=r.Object.hasOwn},1905:(e,t,r)=>{var i=r(2681),s=r(1089),a=r(3984),n=r(1357),o=r(6417),l=r(5630),h=r(6058),d=r(4634),c=r(3284),u=s&&s.prototype,f=l("species"),p=!1,g=a(i.PromiseRejectionEvent),r=n("Promise",function(){var e=o(s),t=e!==String(s);if(!t&&66===c)return!0;if(d&&(!u.catch||!u.finally))return!0;if(!c||c<51||!/native code/.test(e)){var e=new s(function(e){e(1)}),r=function(e){e(function(){},function(){})};if((e.constructor={})[f]=r,!(p=e.then(function(){})instanceof r))return!0}return!(t||"BROWSER"!==h&&"DENO"!==h||g)});e.exports={CONSTRUCTOR:r,REJECTION_EVENT:g,SUBCLASSING:p}},1914:(e,t,r)=>{r(8744)("species")},1916:(e,t,r)=>{r(4671),r(9034),r(1106),r(223),r(6099),r(4562),r(2097),r(9310),r(9527),r(3116),r(2121),r(6839),r(1224),r(6266),r(1914),r(9712),r(9391),r(3180),r(7735),r(4014),r(5794),r(8003);r=r(3260);e.exports=r.Symbol},1934:(e,t,r)=>{var i=r(3113),s=r(38).includes,a=r(9358),r=r(6718);i({target:"Array",proto:!0,forced:a(function(){return!Array(1).includes()})},{includes:function(e){return s(this,e,1{var i=r(3113),a=r(8140),n=r(8797),o=r(328),l=r(8486),h=r(3301);i({target:"Promise",stat:!0,forced:r(9208)},{race:function(e){var r=this,i=o.f(r),s=i.reject,t=l(function(){var t=n(r.resolve);h(e,function(e){a(t,r,e).then(i.resolve,s)})});return t.error&&s(t.value),i.promise}})},2044:(e,t,r)=>{r(1934);r=r(6824);e.exports=r("Array","includes")},2097:(e,t,r)=>{var i=r(2681),s=r(8744),a=r(5374).f,r=r(2188).f,i=i.Symbol;s("dispose"),i&&(s=r(i,"dispose")).enumerable&&s.configurable&&s.writable&&a(i,"dispose",{value:s.value,enumerable:!1,configurable:!1,writable:!1})},2121:(e,t,r)=>{r(8744)("match")},2188:(e,t,r)=>{var i=r(3513),s=r(8140),a=r(7084),n=r(4103),o=r(1480),l=r(903),h=r(9158),d=r(8242),c=Object.getOwnPropertyDescriptor;t.f=i?c:function(e,t){if(e=o(e),t=l(t),d)try{return c(e,t)}catch(e){}if(h(e,t))return n(!s(a.f,e,t),e[t])}},2331:(e,t,r)=>{r=r(9358);e.exports=!r(function(){return Object.isExtensible(Object.preventExtensions({}))})},2380:(e,t,r)=>{var u=r(3513),i=r(8909),f=r(8140),s=r(9358),p=r(1125),g=r(240),m=r(7084),v=r(4296),y=r(2972),a=Object.assign,n=Object.defineProperty,b=i([].concat);e.exports=!a||s(function(){var e,t,r,i;return!(!u||1===a({b:1},a(n({},"a",{enumerable:!0,get:function(){n(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)||(t={},i="abcdefghijklmnopqrst",(e={})[r=Symbol("assign detection")]=7,i.split("").forEach(function(e){t[e]=e}),7!==a({},e)[r])||p(a({},t)).join("")!==i})?function(e,t){for(var r=v(e),i=arguments.length,s=1,a=g.f,n=m.f;s{e.exports=function(){var r={};return{defaults:function(e,t){r=t},get:function(e,t){e=e();return void 0!==e?e:r[t]}}}},2391:(e,t,r)=>{var i=r(3113),s=r(2815);i({target:"Array",stat:!0,forced:!r(3831)(function(e){Array.from(e)})},{from:s})},2597:(e,t,r)=>{r(7391),r(2391);r=r(3260);e.exports=r.Array.from},2604:(e,t,r)=>{var i=r(4672),s=r(3984),a=r(4590),r=r(3181),n=Object;e.exports=r?function(e){return"symbol"==typeof e}:function(e){var t=i("Symbol");return s(t)&&a(t.prototype,n(e))}},2640:(e,t,r)=>{var i=r(4672),s=r(5673),a=r(5630),n=r(3513),o=a("species");e.exports=function(e){e=i(e);n&&e&&!e[o]&&s(e,o,{configurable:!0,get:function(){return this}})}},2657:(e,t,r)=>{var i=r(7221),s=r(1480),a=r(4753).f,n=r(213),o="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){if(!o||"Window"!==i(e))return a(s(e));try{return a(e)}catch(e){return n(o)}}},2675:(e,t,r)=>{var i=r(9358),s=r(6683),a=r(7221),n=r(633),o=Object.isExtensible,r=i(function(){o(1)});e.exports=r||n?function(e){return!(!s(e)||n&&"ArrayBuffer"===a(e))&&(!o||o(e))}:o},2676:(e,t,r)=>{var i=r(3113),s=r(4964);i({target:"Set",proto:!0,real:!0,forced:!r(5731)("isSupersetOf",function(e){return!e})},{isSupersetOf:s})},2681:function(e,t,r){function i(e){return e&&e.Math===Math&&e}e.exports=i("object"==typeof globalThis&&globalThis)||i("object"==typeof window&&window)||i("object"==typeof self&&self)||i("object"==typeof r.g&&r.g)||i("object"==typeof this&&this)||function(){return this}()||Function("return this")()},2686:(e,t,r)=>{var i=r(3113),s=r(2884),a=r(9358),n=r(240),o=r(4296);i({target:"Object",stat:!0,forced:!s||a(function(){n.f(1)})},{getOwnPropertySymbols:function(e){var t=n.f;return t?t(o(e)):[]}})},2692:(e,t,r)=>{var i=r(3513),s=r(5374),a=r(4103);e.exports=i?function(e,t,r){return s.f(e,t,a(1,r))}:function(e,t,r){return e[t]=r,e}},2815:(e,t,r)=>{var u=r(7473),f=r(8140),p=r(4296),g=r(9e3),m=r(9046),v=r(8222),y=r(8753),b=r(6389),E=r(6850),T=r(9678),_=Array;e.exports=function(e){var t,r,i,s,a,n,o=p(e),e=v(this),l=arguments.length,h=1{e.exports=function(e){return null==e}},2884:(e,t,r)=>{var i=r(3284),s=r(9358),a=r(2681).String;e.exports=!!Object.getOwnPropertySymbols&&!s(function(){var e=Symbol("symbol detection");return!a(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&i&&i<41})},2895:(e,t,r)=>{r=r(8968);e.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(r)},2965:(e,t,r)=>{var i=r(3113),s=r(6887),a=r(9358);i({target:"Set",proto:!0,real:!0,forced:!r(5731)("difference",function(e){return 0===e.size})||a(function(){var e={size:1,has:function(){return!0},keys:function(){var t=0;return{next:function(){var e=1{var i=r(8909),s=r(9358),a=r(7221),n=Object,o=i("".split);e.exports=s(function(){return!n("z").propertyIsEnumerable(0)})?function(e){return"String"===a(e)?o(e,""):n(e)}:n},3034:(e,t,r)=>{r(4840);r=r(6824);e.exports=r("Array","find")},3113:(e,t,r)=>{var h=r(2681),d=r(2188).f,c=r(2692),u=r(473),f=r(4290),p=r(6933),g=r(1357);e.exports=function(e,t){var r,i,s,a=e.target,n=e.global,o=e.stat,l=n?h:o?h[a]||f(a,{}):h[a]&&h[a].prototype;if(l)for(r in t){if(i=t[r],s=e.dontCallGetSet?(s=d(l,r))&&s.value:l[r],!g(n?r:a+(o?".":"#")+r,e.forced)&&void 0!==s){if(typeof i==typeof s)continue;p(i,s)}(e.sham||s&&s.sham)&&c(i,"sham",!0),u(l,r,i,e)}}},3116:(e,t,r)=>{r(8744)("iterator")},3120:(e,t,r)=>{r(814)},3133:(e,t,r)=>{function g(){return this}var m=r(3113),v=r(8140),y=r(4634),i=r(6955),b=r(3984),E=r(9211),T=r(7174),_=r(5330),S=r(3606),A=r(2692),w=r(473),s=r(5630),L=r(7096),r=r(4910),k=i.PROPER,R=i.CONFIGURABLE,I=r.IteratorPrototype,C=r.BUGGY_SAFARI_ITERATORS,P=s("iterator"),D="values",x="entries";e.exports=function(e,t,r,i,s,a,n){E(r,t,i);function o(e){if(e===s&&f)return f;if(!C&&e&&e in c)return c[e];switch(e){case"keys":case D:case x:return function(){return new r(this,e)}}return function(){return new r(this)}}var l,h,i=t+" Iterator",d=!1,c=e.prototype,u=c[P]||c["@@iterator"]||s&&c[s],f=!C&&u||o(s),p="Array"===t&&c.entries||u;if(p&&(p=T(p.call(new e)))!==Object.prototype&&p.next&&(y||T(p)===I||(_?_(p,I):b(p[P])||w(p,P,g)),S(p,i,!0,!0),y)&&(L[i]=g),k&&s===D&&u&&u.name!==D&&(!y&&R?A(c,"name",D):(d=!0,f=function(){return v(u,this)})),s)if(l={values:o(D),keys:a?f:o("keys"),entries:o(x)},n)for(h in l)!C&&!d&&h in c||w(c,h,l[h]);else m({target:t,proto:!0,forced:C||d},l);return y&&!n||c[P]===f||w(c,P,f,{name:s}),L[t]=f,l}},3180:(e,t,r)=>{var i=r(4672),s=r(8744),r=r(3606);s("toStringTag"),r(i("Symbol"),"Symbol")},3181:(e,t,r)=>{r=r(2884);e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},3260:(e,t,r)=>{r=r(2681);e.exports=r},3284:(e,t,r)=>{var i,s,a=r(2681),r=r(8968),n=a.process,a=a.Deno,n=n&&n.versions||a&&a.version,a=n&&n.v8;!(s=a?0<(i=a.split("."))[0]&&i[0]<4?1:+(i[0]+i[1]):s)&&r&&(!(i=r.match(/Edge\/(\d+)/))||74<=i[1])&&(i=r.match(/Chrome\/(\d+)/))&&(s=+i[1]),e.exports=s},3301:(e,t,r)=>{function v(e,t){this.stopped=e,this.result=t}var y=r(7473),b=r(8140),E=r(1182),T=r(5778),_=r(9046),S=r(8753),A=r(4590),w=r(6850),L=r(9678),k=r(5656),R=TypeError,I=v.prototype;e.exports=function(e,t,r){function i(e){return a&&k(a,"normal"),new v(!0,e)}function s(e){return u?(E(e),g?m(e[0],e[1],i):m(e[0],e[1])):g?m(e,i):m(e)}var a,n,o,l,h,d,c=r&&r.that,u=!(!r||!r.AS_ENTRIES),f=!(!r||!r.IS_RECORD),p=!(!r||!r.IS_ITERATOR),g=!(!r||!r.INTERRUPTED),m=y(t,c);if(f)a=e.iterator;else if(p)a=e;else{if(!(r=L(e)))throw new R(T(e)+" is not iterable");if(_(r)){for(n=0,o=S(e);n{var s=r(3901),i=r(8615),a=r(9065),n=r(1386),o=r(140),l=r(4268),h=i.Set,d=i.add,c=i.has;e.exports=function(e){var t=s(this),r=n(e),i=new h;return a(t)>r.size?l(r.getIterator(),function(e){c(t,e)&&d(i,e)}):o(t,function(e){r.includes(e)&&d(i,e)}),i}},3456:(e,t,r)=>{var i=r(2681),s=r(3513),a=Object.getOwnPropertyDescriptor;e.exports=function(e){var t;return s?(t=a(i,e))&&t.value:i[e]}},3459:(e,t,r)=>{var i=r(3113),s=r(9358),a=r(3357);i({target:"Set",proto:!0,real:!0,forced:!r(5731)("intersection",function(e){return 2===e.size&&e.has(1)&&e.has(2)})||s(function(){return"3,2"!==String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))})},{intersection:a})},3467:(e,t,r)=>{var h=r(6877),d=r(5673),c=r(396),u=r(7473),f=r(6586),p=r(2850),g=r(3301),n=r(3133),o=r(8772),l=r(2640),m=r(3513),v=r(1098).fastKey,r=r(5098),y=r.set,b=r.getterFor;e.exports={getConstructor:function(e,r,i,s){function a(e,t,r){var i,s=l(e),a=n(e,t);return a?a.value=r:(s.last=a={index:i=v(t,!0),key:t,value:r,previous:t=s.last,next:null,removed:!1},s.first||(s.first=a),t&&(t.next=a),m?s.size++:e.size++,"F"!==i&&(s.index[i]=a)),e}function n(e,t){var r,e=l(e),i=v(t);if("F"!==i)return e.index[i];for(r=e.first;r;r=r.next)if(r.key===t)return r}var e=e(function(e,t){f(e,o),y(e,{type:r,index:h(null),first:null,last:null,size:0}),m||(e.size=0),p(t)||g(t,e[s],{that:e,AS_ENTRIES:i})}),o=e.prototype,l=b(r);return c(o,{clear:function(){for(var e=l(this),t=e.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=null),t=t.next;e.first=e.last=null,e.index=h(null),m?e.size=0:this.size=0},delete:function(e){var t,r,i=l(this),e=n(this,e);return e&&(t=e.next,r=e.previous,delete i.index[e.index],e.removed=!0,r&&(r.next=t),t&&(t.previous=r),i.first===e&&(i.first=t),i.last===e&&(i.last=r),m?i.size--:this.size--),!!e},forEach:function(e){for(var t,r=l(this),i=u(e,1{var i=r(6681).Global;function s(){return i.localStorage}function a(e){return s().getItem(e)}e.exports={name:"localStorage",read:a,write:function(e,t){return s().setItem(e,t)},each:function(e){for(var t=s().length-1;0<=t;t--){var r=s().key(t);e(a(r),r)}},remove:function(e){return s().removeItem(e)},clearAll:function(){return s().clear()}}},3513:(e,t,r)=>{r=r(9358);e.exports=!r(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]})},3606:(e,t,r)=>{var i=r(5374).f,s=r(9158),a=r(5630)("toStringTag");e.exports=function(e,t,r){(e=e&&!r?e.prototype:e)&&!s(e,a)&&i(e,a,{configurable:!0,value:t})}},3627:e=>{function t(e){if(e)return e=e,Object.assign(e,t.prototype),e._callbacks=new Map,e;this._callbacks=new Map}t.prototype.on=function(e,t){var r=this._callbacks.get(e)??[];return r.push(t),this._callbacks.set(e,r),this},t.prototype.once=function(t,r){let i=(...e)=>{this.off(t,i),r.apply(this,e)};return i.fn=r,this.on(t,i),this},t.prototype.off=function(e,t){if(void 0===e&&void 0===t)this._callbacks.clear();else if(void 0===t)this._callbacks.delete(e);else{var r=this._callbacks.get(e);if(r){for(var[i,s]of r.entries())if(s===t||s.fn===t){r.splice(i,1);break}0===r.length?this._callbacks.delete(e):this._callbacks.set(e,r)}}return this},t.prototype.emit=function(e,...t){var r,e=this._callbacks.get(e);if(e)for(r of[...e])r.apply(this,t);return this},t.prototype.listeners=function(e){return this._callbacks.get(e)??[]},t.prototype.listenerCount=function(e){if(e)return this.listeners(e).length;let t=0;for(var r of this._callbacks.values())t+=r.length;return t},t.prototype.hasListeners=function(e){return 0{var i=r(7221),s=r(8909);e.exports=function(e){if("Function"===i(e))return s(e)}},3758:(e,t,r)=>{var i=r(8140),s=r(6683),a=r(2604),n=r(4717),o=r(7107),r=r(5630),l=TypeError,h=r("toPrimitive");e.exports=function(e,t){if(!s(e)||a(e))return e;var r=n(e,h);if(r){if(r=i(r,e,t=void 0===t?"default":t),!s(r)||a(r))return r;throw new l("Can't convert object to primitive value")}return o(e,t=void 0===t?"number":t)}},3831:(e,t,r)=>{var s=r(5630)("iterator"),a=!1;try{var i=0,n={next:function(){return{done:!!i++}},return:function(){a=!0}};n[s]=function(){return this},Array.from(n,function(){throw 2})}catch(e){}e.exports=function(e,t){try{if(!t&&!a)return!1}catch(e){return!1}var r=!1;try{var i={};i[s]=function(){return{next:function(){return{done:r=!0}}}},e(i)}catch(e){}return r}},3837:(e,t,r)=>{var r=r(8909),i=0,s=Math.random(),a=r(1.1.toString);e.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+a(++i+s,36)}},3901:(e,t,r)=>{var i=r(8615).has;e.exports=function(e){return i(e),e}},3906:(e,t,r)=>{var i,s,a,n,o,l,h=r(2681),d=r(3456),c=r(7473),u=r(7518).set,f=r(8180),p=r(2895),g=r(4708),m=r(181),v=r(1368),r=h.MutationObserver||h.WebKitMutationObserver,y=h.document,b=h.process,E=h.Promise,d=d("queueMicrotask");d||(n=new f,o=function(){var e,t;for(v&&(e=b.domain)&&e.exit();t=n.get();)try{t()}catch(e){throw n.head&&l(),e}e&&e.enter()},l=p||v||m||!r||!y?!g&&E&&E.resolve?((f=E.resolve(void 0)).constructor=E,a=c(f.then,f),function(){a(o)}):v?function(){b.nextTick(o)}:(u=c(u,h),function(){u(o)}):(i=!0,s=y.createTextNode(""),new r(o).observe(s,{characterData:!0}),function(){s.data=i=!i}),d=function(e){n.head||l(),n.add(e)}),e.exports=d},3917:(e,t,r)=>{var i=r(1060),s=String,a=TypeError;e.exports=function(e){if(i(e))return e;throw new a("Can't set "+s(e)+" as a prototype")}},3978:(e,t,r)=>{r(7021),r(5274),r(8977),r(9034),r(7391);r=r(3260);e.exports=r.Map},3984:e=>{var t="object"==typeof document&&document.all;e.exports=void 0===t&&void 0!==t?function(e){return"function"==typeof e||e===t}:function(e){return"function"==typeof e}},3990:(e,t,r)=>{var i=r(3113),r=r(2380);i({target:"Object",stat:!0,arity:2,forced:Object.assign!==r},{assign:r})},4011:(e,t,r)=>{var i=r(3113),s=r(8517),a=r(7960);i({target:"Set",proto:!0,real:!0,forced:!r(5731)("symmetricDifference")||!a("symmetricDifference")},{symmetricDifference:s})},4014:(e,t,r)=>{var i=r(2681);r(3606)(i.JSON,"JSON",!0)},4026:(e,t,r)=>{var i=r(2681),r=r(6683),s=i.document,a=r(s)&&r(s.createElement);e.exports=function(e){return a?s.createElement(e):{}}},4103:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},4132:(e,t,r)=>{var i=r(5890);e.exports=function(e){e=+e;return e!=e||0==e?0:i(e)}},4253:(e,t,r)=>{var i=r(8909),s=r(8797);e.exports=function(e,t,r){try{return i(s(Object.getOwnPropertyDescriptor(e,t)[r]))}catch(e){}}},4268:(e,t,r)=>{var n=r(8140);e.exports=function(e,t,r){for(var i,s=r?e:e.iterator,a=e.next;!(i=n(a,s)).done;)if(void 0!==(i=t(i.value)))return i}},4290:(e,t,r)=>{var i=r(2681),s=Object.defineProperty;e.exports=function(t,r){try{s(i,t,{value:r,configurable:!0,writable:!0})}catch(e){i[t]=r}return r}},4296:(e,t,r)=>{var i=r(4857),s=Object;e.exports=function(e){return s(i(e))}},4526:(e,t,r)=>{var s=r(3901),a=r(8615).has,n=r(9065),o=r(1386),l=r(140),h=r(4268),d=r(5656);e.exports=function(e){var t,r=s(this),i=o(e);return n(r)<=i.size?!1!==l(r,function(e){if(i.includes(e))return!1},!0):(t=i.getIterator(),!1!==h(t,function(e){if(a(r,e))return d(t,"normal",!1)}))}},4562:(e,t,r)=>{var i,s,a,n,o,l,h,d=r(3113),c=r(3513),u=r(2681),f=r(8909),p=r(9158),g=r(3984),m=r(4590),v=r(1526),y=r(5673),r=r(6933),b=u.Symbol,E=b&&b.prototype;!c||!g(b)||"description"in E&&void 0===b().description||(i={},r(u=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:v(arguments[0]),t=m(E,this)?new b(e):void 0===e?b():b(e);return""===e&&(i[t]=!0),t},b),(u.prototype=E).constructor=u,s="Symbol(description detection)"===String(b("description detection")),a=f(E.valueOf),n=f(E.toString),o=/^Symbol\((.*)\)[^)]+$/,l=f("".replace),h=f("".slice),y(E,"description",{configurable:!0,get:function(){var e=a(this);return p(i,e)?"":(e=n(e),""===(e=s?h(e,7,-1):l(e,o,"$1"))?void 0:e)}}),d({global:!0,constructor:!0,forced:!0},{Symbol:u}))},4568:(e,t,r)=>{function i(s){return function(e,t){var r,e=n(o(e)),t=a(t),i=e.length;return t<0||i<=t?s?"":void 0:(r=h(e,t))<55296||56319{r=r(8909);e.exports=r({}.isPrototypeOf)},4602:(e,t,r)=>{r(3990);r=r(3260);e.exports=r.Object.assign},4634:e=>{e.exports=!1},4638:(e,t,r)=>{var i=r(8909),s=r(9358),a=r(3984),n=r(9158),o=r(3513),l=r(6955).CONFIGURABLE,h=r(6417),r=r(5098),d=r.enforce,c=r.get,u=String,f=Object.defineProperty,p=i("".slice),g=i("".replace),m=i([].join),v=o&&!s(function(){return 8!==f(function(){},"length",{value:8}).length}),y=String(String).split("String"),r=e.exports=function(e,t,r){"Symbol("===p(u(t),0,7)&&(t="["+g(u(t),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),r&&r.getter&&(t="get "+t),r&&r.setter&&(t="set "+t),(!n(e,"name")||l&&e.name!==t)&&(o?f(e,"name",{value:t,configurable:!0}):e.name=t),v&&r&&n(r,"arity")&&e.length!==r.arity&&f(e,"length",{value:r.arity});try{r&&n(r,"constructor")&&r.constructor?o&&f(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(e){}r=d(e);return n(r,"source")||(r.source=m(y,"string"==typeof t?t:"")),e};Function.prototype.toString=r(function(){return a(this)&&c(this).source||h(this)},"toString")},4648:(e,t,r)=>{var i=r(5499),s=r(8222),a=r(6683),n=r(5630)("species"),o=Array;e.exports=function(e){var t;return void 0===(t=i(e)&&(t=e.constructor,s(t)&&(t===o||i(t.prototype))||a(t)&&null===(t=t[n]))?void 0:t)?o:t}},4653:(e,t,r)=>{var i=r(3113),s=r(328);i({target:"Promise",stat:!0},{withResolvers:function(){var e=s.f(this);return{promise:e.promise,resolve:e.resolve,reject:e.reject}}})},4671:(e,t,r)=>{var i=r(3113),s=r(9358),c=r(5499),u=r(6683),f=r(4296),p=r(8753),g=r(7838),m=r(6389),v=r(4970),a=r(6446),n=r(5630),r=r(3284),y=n("isConcatSpreadable"),n=51<=r||!s(function(){var e=[];return e[y]=!1,e.concat()[0]!==e});i({target:"Array",proto:!0,arity:1,forced:!n||!a("concat")},{concat:function(e){for(var t,r,i,s,a,n=f(this),o=v(n,0),l=0,h=-1,d=arguments.length;h{var i=r(2681),s=r(3984);e.exports=function(e,t){return arguments.length<2?(r=i[e],s(r)?r:void 0):i[e]&&i[e][t];var r}},4689:(e,t,r)=>{r(1516),r(7021),r(9034),r(6197),r(8516),r(8121),r(574),r(4653),r(5784),r(7391);r=r(3260);e.exports=r.Promise},4708:(e,t,r)=>{r=r(8968);e.exports=/ipad|iphone|ipod/i.test(r)&&"undefined"!=typeof Pebble},4717:(e,t,r)=>{var i=r(8797),s=r(2850);e.exports=function(e,t){e=e[t];return s(e)?void 0:i(e)}},4753:(e,t,r)=>{var i=r(6863),s=r(7694).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return i(e,s)}},4839:(e,t,r)=>{var r=r(6681),n=r.slice,o=r.pluck,l=r.each,h=r.bind,d=r.create,c=r.isList,u=r.isFunction,f=r.isObject,p={version:"2.0.12",enabled:!(e.exports={createStore:i}),get:function(e,t){e=this.storage.read(this._namespacePrefix+e);return this._deserialize(e,t)},set:function(e,t){return void 0===t?this.remove(e):(this.storage.write(this._namespacePrefix+e,this._serialize(t)),t)},remove:function(e){this.storage.remove(this._namespacePrefix+e)},each:function(r){var i=this;this.storage.each(function(e,t){r.call(i,i._deserialize(e),(t||"").replace(i._namespaceRegexp,""))})},clearAll:function(){this.storage.clearAll()},hasNamespace:function(e){return this._namespacePrefix=="__storejs_"+e+"_"},createStore:function(){return i.apply(this,arguments)},addPlugin:function(e){this._addPlugin(e)},namespace:function(e){return i(this.storage,this.plugins,e)}};function i(e,t,r){r=r||"",e&&!c(e)&&(e=[e]),t&&!c(t)&&(t=[t]);var i,s=r?"__storejs_"+r+"_":"",a=r?new RegExp("^"+s):null;if(/^[a-zA-Z0-9_\-]*$/.test(r))return(i=d({_namespacePrefix:s,_namespaceRegexp:a,_testStorage:function(e){try{var t="__storejs__test__",r=(e.write(t,t),e.read(t)===t);return e.remove(t),r}catch(e){return!1}},_assignPluginFnProp:function(i,e){var s=this[e];this[e]=function(){var r=n(arguments,0),e=this;var t=[function(){if(s)return l(arguments,function(e,t){r[t]=e}),s.apply(e,r)}].concat(r);return i.apply(e,t)}},_serialize:function(e){return JSON.stringify(e)},_deserialize:function(t,e){if(!t)return e;var r="";try{r=JSON.parse(t)}catch(e){r=t}return void 0!==r?r:e},_addStorage:function(e){this.enabled||this._testStorage(e)&&(this.storage=e,this.enabled=!0)},_addPlugin:function(r){var i=this;if(c(r))l(r,function(e){i._addPlugin(e)});else{var e=o(this.plugins,function(e){return r===e});if(!e){if(this.plugins.push(r),!u(r))throw new Error("Plugins must be function values that return objects");e=r.call(this);if(!f(e))throw new Error("Plugins must return an object of function properties");l(e,function(e,t){if(!u(e))throw new Error("Bad plugin property: "+t+" from plugin "+r.name+". Plugins should only return functions.");i._assignPluginFnProp(e,t)})}}},addStorage:function(e){!function(){var e="undefined"==typeof console?null:console;e&&(e.warn||e.log).apply(e,arguments)}("store.addStorage(storage) is deprecated. Use createStore([storages])"),this._addStorage(e)}},p,{plugins:[]})).raw={},l(i,function(e,t){u(e)&&(i.raw[t]=h(i,e))}),l(e,function(e){i._addStorage(e)}),l(t,function(e){i._addPlugin(e)}),i;throw new Error("store.js namespaces can only have alphanumerics + underscores and dashes")}},4840:(e,t,r)=>{var i=r(3113),s=r(388).find,r=r(6718),a="find",n=!0;a in[]&&Array(1)[a](function(){n=!1}),i({target:"Array",proto:!0,forced:n},{find:function(e){return s(this,e,1{var i=r(2850),s=TypeError;e.exports=function(e){if(i(e))throw new s("Can't call method on "+e);return e}},4910:(e,t,r)=>{var i,s,a=r(9358),n=r(3984),o=r(6683),l=r(6877),h=r(7174),d=r(473),c=r(5630),r=r(4634),u=c("iterator"),c=!1;[].keys&&("next"in(s=[].keys())?(h=h(h(s)))!==Object.prototype&&(i=h):c=!0),!o(i)||a(function(){var e={};return i[u].call(e)!==e})?i={}:r&&(i=l(i)),n(i[u])||d(i,u,function(){return this}),e.exports={IteratorPrototype:i,BUGGY_SAFARI_ITERATORS:c}},4964:(e,t,r)=>{var i=r(3901),s=r(8615).has,a=r(9065),n=r(1386),o=r(4268),l=r(5656);e.exports=function(e){var t,r=i(this),e=n(e);return!(a(r){var i=r(4648);e.exports=function(e,t){return new(i(e))(0===t?0:t)}},5098:(e,t,r)=>{var i,s,a,n,o=r(7717),l=r(2681),h=r(6683),d=r(2692),c=r(9158),u=r(6362),f=r(6812),r=r(32),p="Object already initialized",g=l.TypeError,l=l.WeakMap,m=o||u.state?((a=u.state||(u.state=new l)).get=a.get,a.has=a.has,a.set=a.set,i=function(e,t){if(a.has(e))throw new g(p);return t.facade=e,a.set(e,t),t},s=function(e){return a.get(e)||{}},function(e){return a.has(e)}):(r[n=f("state")]=!0,i=function(e,t){if(c(e,n))throw new g(p);return t.facade=e,d(e,n,t),t},s=function(e){return c(e,n)?e[n]:{}},function(e){return c(e,n)});e.exports={set:i,get:s,has:m,enforce:function(e){return m(e)?s(e):i(e,{})},getterFor:function(t){return function(e){if(h(e)&&(e=s(e)).type===t)return e;throw new g("Incompatible receiver, "+t+" required")}}}},5274:(e,t,r)=>{r(6556)},5287:(e,t,r)=>{var i=r(3113),s=r(4672),a=r(9158),n=r(1526),o=r(1086),r=r(549),l=o("string-to-symbol-registry"),h=o("symbol-to-string-registry");i({target:"Symbol",stat:!0,forced:!r},{for:function(e){var t,e=n(e);return a(l,e)?l[e]:(t=s("Symbol")(e),l[e]=t,h[t]=e,t)}})},5330:(e,t,r)=>{var s=r(4253),a=r(6683),n=r(4857),o=r(3917);e.exports=Object.setPrototypeOf||("__proto__"in{}?(()=>{var r,i=!1,e={};try{(r=s(Object.prototype,"__proto__","set"))(e,[]),i=e instanceof Array}catch(e){}return function(e,t){return n(e),o(t),a(e)&&(i?r(e,t):e.__proto__=t),e}})():void 0)},5374:(e,t,r)=>{var i=r(3513),s=r(8242),a=r(6687),n=r(1182),o=r(903),l=TypeError,h=Object.defineProperty,d=Object.getOwnPropertyDescriptor,c="enumerable",u="configurable",f="writable";t.f=i?a?function(e,t,r){var i;return n(e),t=o(t),n(r),"function"==typeof e&&"prototype"===t&&"value"in r&&f in r&&!r[f]&&(i=d(e,t))&&i[f]&&(e[t]=r.value,r={configurable:(u in r?r:i)[u],enumerable:(c in r?r:i)[c],writable:!1}),h(e,t,r)}:h:function(e,t,r){if(n(e),t=o(t),n(r),s)try{return h(e,t,r)}catch(e){}if("get"in r||"set"in r)throw new l("Accessors not supported");return"value"in r&&(e[t]=r.value),e}},5499:(e,t,r)=>{var i=r(7221);e.exports=Array.isArray||function(e){return"Array"===i(e)}},5614:(e,t,r)=>{r=r(4672);e.exports=r("document","documentElement")},5630:(e,t,r)=>{var i=r(2681),s=r(1086),a=r(9158),n=r(3837),o=r(2884),r=r(3181),l=i.Symbol,h=s("wks"),d=r?l.for||l:l&&l.withoutSetter||n;e.exports=function(e){return a(h,e)||(h[e]=o&&a(l,e)?l[e]:d("Symbol."+e)),h[e]}},5656:(e,t,r)=>{var a=r(8140),n=r(1182),o=r(4717);e.exports=function(e,t,r){var i,s;n(e);try{if(!(i=o(e,"return"))){if("throw"===t)throw r;return r}i=a(i,e)}catch(e){s=!0,i=e}if("throw"===t)throw r;if(s)throw i;return n(i),r}},5673:(e,t,r)=>{var i=r(4638),s=r(5374);e.exports=function(e,t,r){return r.get&&i(r.get,t,{getter:!0}),r.set&&i(r.set,t,{setter:!0}),s.f(e,t,r)}},5702:e=>{e.exports=function(e,t){try{1===arguments.length?console.error(e):console.error(e,t)}catch(e){}}},5712:(e,t,r)=>{var r=r(6681),i=r.Global,a=r.trim,n=(e.exports={name:"cookieStorage",read:function(e){return e&&l(e)?(e="(?:^|.*;\\s*)"+escape(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*",unescape(n.cookie.replace(new RegExp(e),"$1"))):null},write:function(e,t){e&&(n.cookie=escape(e)+"="+escape(t)+"; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=/")},each:s,remove:o,clearAll:function(){s(function(e,t){o(t)})}},i.document);function s(e){for(var t,r,i=n.cookie.split(/; ?/g),s=i.length-1;0<=s;s--)a(i[s])&&(t=i[s].split("="),r=unescape(t[0]),e(unescape(t[1]),r))}function o(e){e&&l(e)&&(n.cookie=escape(e)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/")}function l(e){return new RegExp("(?:^|;\\s*)"+escape(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(n.cookie)}},5731:(e,t,r)=>{function a(e){return{size:e,has:function(){return!1},keys:function(){return{next:function(){return{done:!0}}}}}}function n(e){return{size:e,has:function(){return!0},keys:function(){throw new Error("e")}}}var o=r(4672);e.exports=function(t,r){var i=o("Set");try{(new i)[t](a(0));try{return(new i)[t](a(-1)),!1}catch(e){if(!r)return!0;try{return(new i)[t](n(-1/0)),!1}catch(e){var s=new i;return s.add(1),s.add(2),r(s[t](n(1/0)))}}}catch(e){return!1}}},5773:(e,t,r)=>{var i=r(6683),s=r(2692);e.exports=function(e,t){i(t)&&"cause"in t&&s(e,"cause",t.cause)}},5778:e=>{var t=String;e.exports=function(e){try{return t(e)}catch(e){return"Object"}}},5784:(e,t,r)=>{var i=r(3113),s=r(4634),a=r(1089),n=r(9358),o=r(4672),l=r(3984),h=r(8848),d=r(7367),r=r(473),c=a&&a.prototype;i({target:"Promise",proto:!0,real:!0,forced:!!a&&n(function(){c.finally.call({then:function(){}},function(){})})},{finally:function(t){var r=h(this,o("Promise")),e=l(t);return this.then(e?function(e){return d(r,t()).then(function(){return e})}:t,e?function(e){return d(r,t()).then(function(){throw e})}:t)}}),!s&&l(a)&&(i=o("Promise").prototype.finally,c.finally!==i)&&r(c,"finally",i,{unsafe:!0})},5794:(e,t,r)=>{r(3606)(Math,"Math",!0)},5828:(e,t,r)=>{r=r(9358);e.exports=!r(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype})},5890:e=>{var t=Math.ceil,r=Math.floor;e.exports=Math.trunc||function(e){e=+e;return(0{var i=r(3113),s=r(4526);i({target:"Set",proto:!0,real:!0,forced:!r(5731)("isDisjointFrom",function(e){return!e})},{isDisjointFrom:s})},5978:e=>{function o(e,t,r,i,s,a){return g((t=g(g(t,e),g(i,a)))<>>32-s,r)}function c(e,t,r,i,s,a,n){return o(t&r|~t&i,e,t,s,a,n)}function u(e,t,r,i,s,a,n){return o(t&i|r&~i,e,t,s,a,n)}function f(e,t,r,i,s,a,n){return o(t^r^i,e,t,s,a,n)}function p(e,t,r,i,s,a,n){return o(r^(t|~i),e,t,s,a,n)}function g(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}e.exports=function(e){return(e=>{for(var t,r="0123456789ABCDEF",i="",s=0;s>>4&15)+r.charAt(15&t);return i})((e=>{for(var t="",r=0;r<32*e.length;r+=8)t+=String.fromCharCode(e[r>>5]>>>r%32&255);return t})(((e,t)=>{e[t>>5]|=128<>>9<<4)]=t;for(var r=1732584193,i=-271733879,s=-1732584194,a=271733878,n=0;n{for(var t=Array(e.length>>2),r=0;r>5]|=(255&e.charCodeAt(r/8))<{var r=r(8909),i=Map.prototype;e.exports={Map:Map,set:r(i.set),get:r(i.get),has:r(i.has),remove:r(i.delete),proto:i}},6058:(e,t,r)=>{function i(e){return a.slice(0,e.length)===e}var s=r(2681),a=r(8968),r=r(7221);e.exports=i("Bun/")?"BUN":i("Cloudflare-Workers")?"CLOUDFLARE":i("Deno/")?"DENO":i("Node.js/")?"NODE":s.Bun&&"string"==typeof Bun.version?"BUN":s.Deno&&"object"==typeof Deno.version?"DENO":"process"===r(s.process)?"NODE":s.window&&s.document?"BROWSER":"REST"},6099:(e,t,r)=>{r(8744)("asyncIterator")},6127:(e,t,r)=>{var i=r(3113),s=r(4672),a=r(4634),n=r(1089),o=r(1905).CONSTRUCTOR,l=r(7367),h=s("Promise"),d=a&&!o;i({target:"Promise",stat:!0,forced:a||o},{resolve:function(e){return l(d&&this===h?n:this,e)}})},6197:(e,t,r)=>{r(7495),r(6612),r(7280),r(1970),r(8196),r(6127)},6226:(e,t,r)=>{var i=r(3513),s=r(6687),o=r(5374),l=r(1182),h=r(1480),d=r(1125);t.f=i&&!s?Object.defineProperties:function(e,t){l(e);for(var r,i=h(t),s=d(t),a=s.length,n=0;n{var i=r(3113),s=r(9158),a=r(2604),n=r(5778),o=r(1086),r=r(549),l=o("symbol-to-string-registry");i({target:"Symbol",stat:!0,forced:!r},{keyFor:function(e){if(!a(e))throw new TypeError(n(e)+" is not a symbol");if(s(l,e))return l[e]}})},6266:(e,t,r)=>{r(8744)("search")},6362:(e,t,r)=>{var i=r(4634),s=r(2681),r=r(4290),a="__core-js_shared__",e=e.exports=s[a]||r(a,{});(e.versions||(e.versions=[])).push({version:"3.45.0",mode:i?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.45.0/LICENSE",source:"https://github.com/zloirock/core-js"})},6389:(e,t,r)=>{var i=r(3513),s=r(5374),a=r(4103);e.exports=function(e,t,r){i?s.f(e,t,a(0,r)):e[t]=r}},6405:(e,t,r)=>{var i={};i[r(5630)("toStringTag")]="z",e.exports="[object z]"===String(i)},6417:(e,t,r)=>{var i=r(8909),s=r(3984),r=r(6362),a=i(Function.toString);s(r.inspectSource)||(r.inspectSource=function(e){return a(e)}),e.exports=r.inspectSource},6446:(e,t,r)=>{var i=r(9358),s=r(5630),a=r(3284),n=s("species");e.exports=function(t){return 51<=a||!i(function(){var e=[];return(e.constructor={})[n]=function(){return{foo:1}},1!==e[t](Boolean).foo})}},6556:(e,t,r)=>{r(1531)("Map",function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},r(3467))},6586:(e,t,r)=>{var i=r(4590),s=TypeError;e.exports=function(e,t){if(i(t,e))return e;throw new s("Incorrect invocation")}},6612:(e,t,r)=>{var i=r(3113),d=r(8140),c=r(8797),s=r(328),a=r(8486),u=r(3301);i({target:"Promise",stat:!0,forced:r(9208)},{all:function(e){var o=this,t=s.f(o),l=t.resolve,h=t.reject,r=a(function(){var i=c(o.resolve),s=[],a=0,n=1;u(e,function(e){var t=a++,r=!1;n++,d(i,o,e).then(function(e){r||(r=!0,s[t]=e,--n)||l(s)},h)}),--n||l(s)});return r.error&&h(r.value),t.promise}})},6681:(e,t,r)=>{var n=Object.assign||function(r,e,t,i){for(var s=1;s{function a(){}return Object.create?function(e,t,r,i){var s=o(arguments,1);return n.apply(this,[Object.create(e)].concat(s))}:function(e,t,r,i){var s=o(arguments,1);return a.prototype=e,n.apply(this,[new a].concat(s))}})(),s=String.prototype.trim?function(e){return String.prototype.trim.call(e)}:function(e){return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")},r="undefined"!=typeof window?window:r.g;function o(e,t){return Array.prototype.slice.call(e,t||0)}function a(e,r){l(e,function(e,t){r(e,t)})}function l(e,t){if(h(e)){for(var r=0;r{var i=r(3984);e.exports=function(e){return"object"==typeof e?null!==e:i(e)}},6687:(e,t,r)=>{var i=r(3513),r=r(9358);e.exports=i&&r(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype})},6718:(e,t,r)=>{var i=r(5630),s=r(6877),r=r(5374).f,a=i("unscopables"),n=Array.prototype;void 0===n[a]&&r(n,a,{configurable:!0,value:s(null)}),e.exports=function(e){n[a][e]=!0}},6738:(e,t,r)=>{var i=r(6405),s=r(3984),a=r(7221),n=r(5630)("toStringTag"),o=Object,l="Arguments"===a(function(){return arguments}());e.exports=i?a:function(e){var t;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=((e,t)=>{try{return e[t]}catch(e){}})(e=o(e),n))?t:l?a(e):"Object"===(t=a(e))&&s(e.callee)?"Arguments":t}},6745:(e,t,r)=>{var i=r(3901),s=r(8615).add,a=r(6891),n=r(1386),o=r(4268);e.exports=function(e){var t=i(this),e=n(e).getIterator(),r=a(t);return o(e,function(e){s(r,e)}),r}},6758:(e,t,r)=>{var i=r(1526);e.exports=function(e,t){return void 0===e?arguments.length<2?"":t:i(e)}},6812:(e,t,r)=>{var i=r(1086),s=r(3837),a=i("keys");e.exports=function(e){return a[e]||(a[e]=s(e))}},6824:(e,t,r)=>{var i=r(2681),s=r(8909);e.exports=function(e,t){return s(i[e].prototype[t])}},6839:(e,t,r)=>{r(8744)("matchAll")},6849:()=>{var e,t;e=window,t=performance,e._plt=e._plt||(t&&t.timeOrigin?t.timeOrigin+t.now():Date.now())},6850:(e,t,r)=>{var i=r(8140),s=r(8797),a=r(1182),n=r(5778),o=r(9678),l=TypeError;e.exports=function(e,t){t=arguments.length<2?o(e):t;if(s(t))return a(i(t,e));throw new l(n(e)+" is not iterable")}},6863:(e,t,r)=>{var i=r(8909),n=r(9158),o=r(1480),l=r(38).indexOf,h=r(32),d=i([].push);e.exports=function(e,t){var r,i=o(e),s=0,a=[];for(r in i)!n(h,r)&&n(i,r)&&d(a,r);for(;t.length>s;)!n(i,r=t[s++])||~l(a,r)||d(a,r);return a}},6877:(e,t,r)=>{function i(){}function s(e){e.write(v("")),e.close();var t=e.parentWindow.Object;return e=null,t}var a,n=r(1182),o=r(6226),l=r(7694),h=r(32),d=r(5614),c=r(4026),r=r(6812),u=">",f="<",p="prototype",g="script",m=r("IE_PROTO"),v=function(e){return f+g+u+e+f+"/"+g+u},y=function(){try{a=new ActiveXObject("htmlfile")}catch(e){}y="undefined"==typeof document||document.domain&&a?s(a):(e=c("iframe"),t="java"+g+":",e.style.display="none",d.appendChild(e),e.src=String(t),(t=e.contentWindow.document).open(),t.write(v("document.F=Object")),t.close(),t.F);for(var e,t,r=l.length;r--;)delete y[p][l[r]];return y()};h[m]=!0,e.exports=Object.create||function(e,t){var r;return null!==e?(i[p]=n(e),r=new i,i[p]=null,r[m]=e):r=y(),void 0===t?r:o.f(r,t)}},6887:(e,t,r)=>{var s=r(3901),i=r(8615),a=r(6891),n=r(9065),o=r(1386),l=r(140),h=r(4268),d=i.has,c=i.remove;e.exports=function(e){var t=s(this),r=o(e),i=a(t);return n(t)<=r.size?l(t,function(e){r.includes(e)&&c(i,e)}):h(r.getIterator(),function(e){d(i,e)&&c(i,e)}),i}},6891:(e,t,r)=>{var i=r(8615),s=r(140),a=i.Set,n=i.add;e.exports=function(e){var t=new a;return s(e,function(e){n(t,e)}),t}},6933:(e,t,r)=>{var l=r(9158),h=r(540),d=r(2188),c=r(5374);e.exports=function(e,t,r){for(var i=h(t),s=c.f,a=d.f,n=0;n{var i=r(3513),r=r(9158),s=Function.prototype,a=i&&Object.getOwnPropertyDescriptor,r=r(s,"name"),n=r&&"something"===function(){}.name,i=r&&(!i||a(s,"name").configurable);e.exports={EXISTS:r,PROPER:n,CONFIGURABLE:i}},7021:(e,t,r)=>{var i=r(1480),s=r(6718),a=r(7096),n=r(5098),o=r(5374).f,l=r(3133),h=r(8772),d=r(4634),r=r(3513),c="Array Iterator",u=n.set,f=n.getterFor(c),n=(e.exports=l(Array,"Array",function(e,t){u(this,{type:c,target:i(e),index:0,kind:t})},function(){var e=f(this),t=e.target,r=e.index++;if(!t||r>=t.length)return e.target=null,h(void 0,!0);switch(e.kind){case"keys":return h(r,!1);case"values":return h(t[r],!1)}return h([r,t[r]],!1)},"values"),a.Arguments=a.Array);if(s("keys"),s("values"),s("entries"),!d&&r&&"values"!==n.name)try{o(n,"name",{value:"values"})}catch(e){}},7044:(F,N,e)=>{function a(e,t,r){var i=oe(I,t);i&&delete I[t],P(e,t,r),i&&e!==I&&P(I,t,i)}function t(e,t){var r=D[e]=E(C);return ie(r,{type:R,tag:e,description:t}),f||(r.description=t),r}function i(e,t,r){return e===I&&i(x,t,r),m(e),t=y(t),m(r),(g(D,t)?(r.enumerable?(g(e,k)&&e[k][t]&&(e[k][t]=!1),r=E(r,{enumerable:b(0,!1)})):(g(e,k)||P(e,k,b(1,E(null))),e[k][t]=!0),M):P)(e,t,r)}function r(t,e){m(t);var r=v(e),e=T(r).concat(l(r));return L(e,function(e){f&&!c(s,r,e)||i(t,e,r[e])}),t}function s(e){var e=y(e),t=c(he,this,e);return!(this===I&&g(D,e)&&!g(x,e))&&(!(t||!g(this,e)||!g(D,e)||g(this,k)&&this[k][e])||t)}function n(e,t){var r,e=v(e),t=y(t);if(e!==I||!g(D,t)||g(x,t))return!(r=oe(e,t))||!g(D,t)||g(e,k)&&e[k][t]||(r.enumerable=!0),r}function o(e){var e=le(v(e)),t=[];return L(e,function(e){g(D,e)||g(X,e)||de(t,e)}),t}function l(e){var t=e===I,e=le(t?x:v(e)),r=[];return L(e,function(e){!g(D,e)||t&&!g(I,e)||de(r,D[e])}),r}var h=e(3113),d=e(2681),c=e(8140),u=e(8909),U=e(4634),f=e(3513),p=e(2884),B=e(9358),g=e(9158),$=e(4590),m=e(1182),v=e(1480),y=e(903),V=e(1526),b=e(4103),E=e(6877),T=e(1125),G=e(4753),H=e(2657),j=e(240),z=e(2188),K=e(5374),Y=e(6226),W=e(7084),_=e(473),q=e(5673),S=e(1086),A=e(6812),X=e(32),Q=e(3837),Z=e(5630),J=e(30),ee=e(8744),te=e(7345),re=e(3606),w=e(5098),L=e(388).forEach,k=A("hidden"),R="Symbol",e="prototype",ie=w.set,se=w.getterFor(R),I=Object[e],A=d.Symbol,C=A&&A[e],ae=d.RangeError,ne=d.TypeError,w=d.QObject,oe=z.f,P=K.f,le=H.f,he=W.f,de=u([].push),D=S("symbols"),x=S("op-symbols"),u=S("wks"),O=!w||!w[e]||!w[e].findChild,M=f&&B(function(){return 7!==E(P({},"a",{get:function(){return P(this,"a",{value:7}).a}})).a})?a:P;p||(_(C=(A=function(){if($(C,this))throw new ne("Symbol is not a constructor");var e=arguments.length&&void 0!==arguments[0]?V(arguments[0]):void 0,i=Q(e),s=function(t){var r=void 0===this?d:this,t=(r===I&&c(s,x,t),g(r,k)&&g(r[k],i)&&(r[k][i]=!1),b(1,t));try{M(r,i,t)}catch(e){if(!(e instanceof ae))throw e;a(r,i,t)}};return f&&O&&M(I,i,{configurable:!0,set:s}),t(i,e)})[e],"toString",function(){return se(this).tag}),_(A,"withoutSetter",function(e){return t(Q(e),e)}),W.f=s,K.f=i,Y.f=r,z.f=n,G.f=H.f=o,j.f=l,J.f=function(e){return t(Z(e),e)},f&&(q(C,"description",{configurable:!0,get:function(){return se(this).description}}),U||_(I,"propertyIsEnumerable",s,{unsafe:!0}))),h({global:!0,constructor:!0,wrap:!0,forced:!p,sham:!p},{Symbol:A}),L(T(u),function(e){ee(e)}),h({target:R,stat:!0,forced:!p},{useSetter:function(){O=!0},useSimple:function(){O=!1}}),h({target:"Object",stat:!0,forced:!p,sham:!f},{create:function(e,t){return void 0===t?E(e):r(E(e),t)},defineProperty:i,defineProperties:r,getOwnPropertyDescriptor:n}),h({target:"Object",stat:!0,forced:!p},{getOwnPropertyNames:o}),te(),re(A,R),X[k]=!0},7084:(e,t)=>{var r={}.propertyIsEnumerable,i=Object.getOwnPropertyDescriptor,s=i&&!r.call({1:2},1);t.f=s?function(e){e=i(this,e);return!!e&&e.enumerable}:r},7095:(e,t,r)=>{var i=r(3113),s=r(6745),a=r(7960);i({target:"Set",proto:!0,real:!0,forced:!r(5731)("union")||!a("union")},{union:s})},7096:e=>{e.exports={}},7107:(e,t,r)=>{var s=r(8140),a=r(3984),n=r(6683),o=TypeError;e.exports=function(e,t){var r,i;if("string"===t&&a(r=e.toString)&&!n(i=s(r,e)))return i;if(a(r=e.valueOf)&&!n(i=s(r,e)))return i;if("string"!==t&&a(r=e.toString)&&!n(i=s(r,e)))return i;throw new o("Can't convert object to primitive value")}},7174:(e,t,r)=>{var i=r(9158),s=r(3984),a=r(4296),n=r(6812),r=r(5828),o=n("IE_PROTO"),l=Object,h=l.prototype;e.exports=r?l.getPrototypeOf:function(e){var t,e=a(e);return i(e,o)?e[o]:(t=e.constructor,s(t)&&e instanceof t?t.prototype:e instanceof l?h:null)}},7221:(e,t,r)=>{var r=r(8909),i=r({}.toString),s=r("".slice);e.exports=function(e){return s(i(e),8,-1)}},7280:(e,t,r)=>{var i=r(3113),s=r(4634),a=r(1905).CONSTRUCTOR,n=r(1089),o=r(4672),l=r(3984),r=r(473),h=n&&n.prototype;i({target:"Promise",proto:!0,forced:a,real:!0},{catch:function(e){return this.then(void 0,e)}}),!s&&l(n)&&(i=o("Promise").prototype.catch,h.catch!==i)&&r(h,"catch",i,{unsafe:!0})},7314:e=>{function s(e){return!(!(t=e)||"object"!=typeof t||(t=e,"[object RegExp]"===(e=Object.prototype.toString.call(t)))||"[object Date]"===e||(e=>e.$$typeof===r)(t));var t}var r="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function o(e,t){return!1!==t.clone&&t.isMergeableObject(e)?h(Array.isArray(e)?[]:{},e,t):e}function a(e,t,r){return e.concat(t).map(function(e){return o(e,r)})}function t(e){return Object.keys(e).concat((t=e,Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return Object.propertyIsEnumerable.call(t,e)}):[]));var t}function l(e,t){try{return t in e}catch(e){return!1}}function n(i,s,a){var n={};return a.isMergeableObject(i)&&t(i).forEach(function(e){n[e]=o(i[e],a)}),t(s).forEach(function(e){var t,r;(!l(t=i,r=e)||Object.hasOwnProperty.call(t,r)&&Object.propertyIsEnumerable.call(t,r))&&(l(i,e)&&a.isMergeableObject(s[e])?n[e]=(t=e,((r=a).customMerge&&"function"==typeof(r=r.customMerge(t))?r:h)(i[e],s[e],a)):n[e]=o(s[e],a))}),n}function h(e,t,r){(r=r||{}).arrayMerge=r.arrayMerge||a,r.isMergeableObject=r.isMergeableObject||s,r.cloneUnlessOtherwiseSpecified=o;var i=Array.isArray(t);return i===Array.isArray(e)?i?r.arrayMerge(e,t,r):n(e,t,r):o(t,r)}h.all=function(e,r){if(Array.isArray(e))return e.reduce(function(e,t){return h(e,t,r)},{});throw new Error("first argument should be an array")},e.exports=h},7345:(e,t,r)=>{var i=r(8140),s=r(4672),a=r(5630),n=r(473);e.exports=function(){var e=s("Symbol"),e=e&&e.prototype,t=e&&e.valueOf,r=a("toPrimitive");e&&!e[r]&&n(e,r,function(e){return i(t,this)},{arity:1})}},7367:(e,t,r)=>{var i=r(1182),s=r(6683),a=r(328);e.exports=function(e,t){return i(e),s(t)&&t.constructor===e?t:((0,(e=a.f(e)).resolve)(t),e.promise)}},7391:(e,t,r)=>{var i=r(4568).charAt,s=r(1526),a=r(5098),n=r(3133),o=r(8772),l="String Iterator",h=a.set,d=a.getterFor(l);n(String,"String",function(e){h(this,{type:l,string:s(e),index:0})},function(){var e=d(this),t=e.string,r=e.index;return r>=t.length?o(void 0,!0):(t=i(t,r),e.index+=t.length,o(t,!1))})},7473:(e,t,r)=>{var i=r(3679),s=r(8797),a=r(7603),n=i(i.bind);e.exports=function(e,t){return s(e),void 0===t?e:a?n(e,t):function(){return e.apply(t,arguments)}}},7495:(F,N,e)=>{function U(t){c(d,n,function(){var e=t.facade;a?S.emit("rejectionHandled",e):D(te,e,t.value)})}var r,t,i,s,B=e(3113),$=e(4634),a=e(1368),n=e(2681),V=e(3260),c=e(8140),o=e(473),l=e(5330),G=e(3606),H=e(2640),j=e(8797),h=e(3984),z=e(6683),K=e(6586),Y=e(8848),d=e(7518).set,u=e(3906),W=e(5702),q=e(8486),X=e(8180),f=e(5098),p=e(1089),g=e(1905),e=e(328),m="Promise",v=g.CONSTRUCTOR,Q=g.REJECTION_EVENT,g=g.SUBCLASSING,y=f.getterFor(m),Z=f.set,f=p&&p.prototype,b=p,E=f,T=n.TypeError,_=n.document,S=n.process,A=e.f,J=A,ee=!!(_&&_.createEvent&&n.dispatchEvent),w="unhandledrejection",te="rejectionhandled",L=1,re=2,k=1,R=2,I=function(e){var t;return!(!z(e)||!h(t=e.then))&&t},C=function(e,t){var r,i,s,a=t.value,n=t.state===L,o=n?e.ok:e.fail,l=e.resolve,h=e.reject,d=e.domain;try{o?(n||(t.rejection===R&&U(t),t.rejection=k),!0===o?r=a:(d&&d.enter(),r=o(a),d&&(d.exit(),s=!0)),r===e.promise?h(new T("Promise-chain cycle")):(i=I(r))?c(i,r,l,h):l(r)):h(a)}catch(e){d&&!s&&d.exit(),h(e)}},P=function(r,i){r.notified||(r.notified=!0,u(function(){for(var e,t=r.reactions;e=t.get();)C(e,r);r.notified=!1,i&&!r.rejection&&ie(r)}))},D=function(e,t,r){var i;ee?((i=_.createEvent("Event")).promise=t,i.reason=r,i.initEvent(e,!1,!0),n.dispatchEvent(i)):i={promise:t,reason:r},!Q&&(t=n["on"+e])?t(i):e===w&&W("Unhandled promise rejection",r)},ie=function(i){c(d,n,function(){var e=i.facade,t=i.value,r=se(i);if(r&&(r=q(function(){a?S.emit("unhandledRejection",t,e):D(w,e,t)}),i.rejection=a||se(i)?R:k,r.error))throw r.value})},se=function(e){return e.rejection!==k&&!e.parent},x=function(t,r,i){return function(e){t(r,e,i)}},O=function(e,t,r){e.done||(e.done=!0,(e=r?r:e).value=t,e.state=re,P(e,!0))},M=function(r,e,t){if(!r.done){r.done=!0,t&&(r=t);try{if(r.facade===e)throw new T("Promise can't be resolved itself");var i=I(e);i?u(function(){var t={done:!1};try{c(i,e,x(M,t,r),x(O,t,r))}catch(e){O(t,e,r)}}):(r.value=e,r.state=L,P(r,!1))}catch(e){O({done:!1},e,r)}}};if(v&&(E=(b=function(e){K(this,E),j(e),c(r,this);var t=y(this);try{e(x(M,t),x(O,t))}catch(e){O(t,e)}}).prototype,(r=function(e){Z(this,{type:m,done:!1,notified:!1,parent:!1,reactions:new X,rejection:!1,state:0,value:null})}).prototype=o(E,"then",function(e,t){var r=y(this),i=A(Y(this,b));return r.parent=!0,i.ok=!h(e)||e,i.fail=h(t)&&t,i.domain=a?S.domain:void 0,0===r.state?r.reactions.add(i):u(function(){C(i,r)}),i.promise}),t=function(){var e=new r,t=y(e);this.promise=e,this.resolve=x(M,t),this.reject=x(O,t)},e.f=A=function(e){return e===b||e===i?new t:J(e)},!$)&&h(p)&&f!==Object.prototype){s=f.then,g||o(f,"then",function(e,t){var r=this;return new b(function(e,t){c(s,r,e,t)}).then(e,t)},{unsafe:!0});try{delete f.constructor}catch(e){}l&&l(f,E)}B({global:!0,constructor:!0,wrap:!0,forced:v},{Promise:b}),i=V.Promise,G(b,m,!1,!0),H(m)},7518:(e,t,r)=>{function i(e){return function(){I(e)}}function s(e){I(e.data)}function a(e){l.postMessage(w(e),n.protocol+"//"+n.host)}var n,o,l=r(2681),h=r(8458),d=r(7473),c=r(3984),u=r(9158),f=r(9358),p=r(5614),g=r(213),m=r(4026),v=r(65),y=r(2895),r=r(1368),b=l.setImmediate,E=l.clearImmediate,T=l.process,_=l.Dispatch,S=l.Function,A=l.MessageChannel,w=l.String,L=0,k={},R="onreadystatechange",I=(f(function(){n=l.location}),function(e){var t;u(k,e)&&(t=k[e],delete k[e],t())});b&&E||(b=function(e){v(arguments.length,1);var t=c(e)?e:S(e),r=g(arguments,1);return k[++L]=function(){h(t,void 0,r)},o(L),L},E=function(e){delete k[e]},r?o=function(e){T.nextTick(i(e))}:_&&_.now?o=function(e){_.now(i(e))}:A&&!y?(y=(r=new A).port2,r.port1.onmessage=s,o=d(y.postMessage,y)):l.addEventListener&&c(l.postMessage)&&!l.importScripts&&n&&"file:"!==n.protocol&&!f(a)?(o=a,l.addEventListener("message",s,!1)):o=R in m("script")?function(e){p.appendChild(m("script"))[R]=function(){p.removeChild(this),I(e)}}:function(e){setTimeout(i(e),0)}),e.exports={set:b,clear:E}},7603:(e,t,r)=>{r=r(9358);e.exports=!r(function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")})},7694:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},7717:(e,t,r)=>{var i=r(2681),r=r(3984),i=i.WeakMap;e.exports=r(i)&&/native code/.test(String(i))},7735:(e,t,r)=>{r(8744)("unscopables")},7744:e=>{var a="expire_mixin";e.exports=function(){var s=this.createStore(this.storage,null,this._namespacePrefix+a);return{set:function(e,t,r,i){this.hasNamespace(a)||s.set(t,i);return e()},get:function(e,t){this.hasNamespace(a)||i.call(this,t);return e()},remove:function(e,t){this.hasNamespace(a)||s.remove(t);return e()},getExpiration:function(e,t){return s.get(t)},removeExpiredKeys:function(e){var r=[];this.each(function(e,t){r.push(t)});for(var t=0;t{var t=TypeError;e.exports=function(e){if(9007199254740991{var s=r(2692),a=r(1744),n=r(1658),o=Error.captureStackTrace;e.exports=function(e,t,r,i){n&&(o?o(e,t):s(e,"stack",a(r,i)))}},7920:(e,t,r)=>{r(7021),r(9034),r(3120),r(2965),r(3459),r(5942),r(451),r(2676),r(4011),r(7095),r(7391);r=r(3260);e.exports=r.Set},7960:e=>{e.exports=function(e){try{var t=new Set,r={size:0,has:function(){return!0},keys:function(){return Object.defineProperty({},"next",{get:function(){return t.clear(),t.add(4),function(){return{done:!0}}}})}},i=t[e](r);return 1===i.size&&4===i.values().next().value}catch(e){return!1}}},8003:(e,t,r)=>{var i=r(3113),s=r(2681),r=r(3606);i({global:!0},{Reflect:{}}),r(s.Reflect,"Reflect",!0)},8078:e=>{e.exports=function(e){return{iterator:e,next:e.next,done:!1}}},8109:(e,t,r)=>{var i=r(3901),s=r(9065),a=r(140),n=r(1386);e.exports=function(e){var t=i(this),r=n(e);return!(s(t)>r.size)&&!1!==a(t,function(e){if(!r.includes(e))return!1},!0)}},8121:(e,t,r)=>{var i=r(3113),u=r(8140),f=r(8797),s=r(4672),a=r(328),n=r(8486),p=r(3301),r=r(9208),g="No one promise resolved";i({target:"Promise",stat:!0,forced:r},{any:function(e){var l=this,h=s("AggregateError"),t=a.f(l),d=t.resolve,c=t.reject,r=n(function(){var i=f(l.resolve),s=[],a=0,n=1,o=!1;p(e,function(e){var t=a++,r=!1;n++,u(i,l,e).then(function(e){r||o||(o=!0,d(e))},function(e){r||o||(r=!0,s[t]=e,--n)||c(new h(s,g))})}),--n||c(new h(s,g))});return r.error&&c(r.value),t.promise}})},8140:(e,t,r)=>{var r=r(7603),i=Function.prototype.call;e.exports=r?i.bind(i):function(){return i.apply(i,arguments)}},8180:e=>{function t(){this.head=null,this.tail=null}t.prototype={add:function(e){var e={item:e,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var e=this.head;if(e)return null===(this.head=e.next)&&(this.tail=null),e.item}},e.exports=t},8196:(e,t,r)=>{var i=r(3113),s=r(328);i({target:"Promise",stat:!0,forced:r(1905).CONSTRUCTOR},{reject:function(e){var t=s.f(this);return(0,t.reject)(e),t.promise}})},8222:(e,t,r)=>{function i(){}function s(e){if(!l(e))return!1;try{return u(i,[],e),!0}catch(e){return!1}}function a(e){if(!l(e))return!1;switch(h(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return g||!!p(f,c(e))}catch(e){return!0}}var n=r(8909),o=r(9358),l=r(3984),h=r(6738),d=r(4672),c=r(6417),u=d("Reflect","construct"),f=/^\s*(?:class|function)\b/,p=n(f.exec),g=!f.test(i);a.sham=!0,e.exports=!u||o(function(){var e;return s(s.call)||!s(Object)||!s(function(){e=!0})||e})?a:s},8242:(e,t,r)=>{var i=r(3513),s=r(9358),a=r(4026);e.exports=!i&&!s(function(){return 7!==Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a})},8262:(e,t,r)=>{r(3113)({target:"Object",stat:!0},{hasOwn:r(9158)})},8458:(e,t,r)=>{var r=r(7603),i=Function.prototype,s=i.apply,a=i.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?a.bind(s):function(){return a.apply(s,arguments)})},8486:e=>{e.exports=function(e){try{return{error:!1,value:e()}}catch(e){return{error:!0,value:e}}}},8516:(e,t,r)=>{var i=r(3113),h=r(8140),d=r(8797),s=r(328),a=r(8486),c=r(3301);i({target:"Promise",stat:!0,forced:r(9208)},{allSettled:function(e){var o=this,t=s.f(o),l=t.resolve,r=t.reject,i=a(function(){var i=d(o.resolve),s=[],a=0,n=1;c(e,function(e){var t=a++,r=!1;n++,h(i,o,e).then(function(e){r||(r=!0,s[t]={status:"fulfilled",value:e},--n)||l(s)},function(e){r||(r=!0,s[t]={status:"rejected",reason:e},--n)||l(s)})}),--n||l(s)});return i.error&&r(i.value),t.promise}})},8517:(e,t,r)=>{var i=r(3901),s=r(8615),a=r(6891),n=r(1386),o=r(4268),l=s.add,h=s.has,d=s.remove;e.exports=function(e){var t=i(this),e=n(e).getIterator(),r=a(t);return o(e,function(e){(h(t,e)?d:l)(r,e)}),r}},8584:(e,t,r)=>{var i=r(6405),s=r(6738);e.exports=i?{}.toString:function(){return"[object "+s(this)+"]"}},8615:(e,t,r)=>{var r=r(8909),i=Set.prototype;e.exports={Set:Set,add:r(i.add),has:r(i.has),remove:r(i.delete),proto:i}},8744:(e,t,r)=>{var i=r(3260),s=r(9158),a=r(30),n=r(5374).f;e.exports=function(e){var t=i.Symbol||(i.Symbol={});s(t,e)||n(t,e,{value:a.f(e)})}},8753:(e,t,r)=>{var i=r(9079);e.exports=function(e){return i(e.length)}},8772:e=>{e.exports=function(e,t){return{value:e,done:t}}},8797:(e,t,r)=>{var i=r(3984),s=r(5778),a=TypeError;e.exports=function(e){if(i(e))return e;throw new a(s(e)+" is not a function")}},8848:(e,t,r)=>{var i=r(1182),s=r(1445),a=r(2850),n=r(5630)("species");e.exports=function(e,t){var e=i(e).constructor;return void 0===e||a(e=i(e)[n])?t:s(e)}},8909:(e,t,r)=>{var r=r(7603),i=Function.prototype,s=i.call,i=r&&i.bind.bind(s,s);e.exports=r?i:function(e){return function(){return s.apply(e,arguments)}}},8968:(e,t,r)=>{r=r(2681).navigator,r=r&&r.userAgent;e.exports=r?String(r):""},8977:(e,t,r)=>{var i=r(3113),s=r(8909),a=r(8797),n=r(4857),o=r(3301),l=r(6033),h=r(4634),r=r(9358),d=l.Map,c=l.has,u=l.get,f=l.set,p=s([].push),l=h||r(function(){return 1!==d.groupBy("ab",function(e){return e}).get("a").length});i({target:"Map",stat:!0,forced:h||l},{groupBy:function(e,r){n(e),a(r);var i=new d,s=0;return o(e,function(e){var t=r(e,s++);c(i,t)?p(u(i,t),e):f(i,t,[e])}),i}})},9e3:(e,t,r)=>{var s=r(1182),a=r(5656);e.exports=function(t,e,r,i){try{return i?e(s(r)[0],r[1]):e(r)}catch(e){a(t,"throw",e)}}},9034:(e,t,r)=>{var i=r(6405),s=r(473),r=r(8584);i||s(Object.prototype,"toString",r,{unsafe:!0})},9046:(e,t,r)=>{var i=r(5630),s=r(7096),a=i("iterator"),n=Array.prototype;e.exports=function(e){return void 0!==e&&(s.Array===e||n[a]===e)}},9065:(e,t,r)=>{var i=r(4253),r=r(8615);e.exports=i(r.proto,"size","get")||function(e){return e.size}},9079:(e,t,r)=>{var i=r(4132),s=Math.min;e.exports=function(e){e=i(e);return 0{var i=r(8909),s=r(4296),a=i({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,t){return a(s(e),t)}},9208:(e,t,r)=>{var i=r(1089),s=r(3831),r=r(1905).CONSTRUCTOR;e.exports=r||!s(function(e){i.all(e).then(void 0,function(){})})},9211:(e,t,r)=>{function s(){return this}var a=r(4910).IteratorPrototype,n=r(6877),o=r(4103),l=r(3606),h=r(7096);e.exports=function(e,t,r,i){t+=" Iterator";return e.prototype=n(a,{next:o(+!i,r)}),l(e,t,!1,!0),h[t]=s,e}},9310:(e,t,r)=>{r(8744)("hasInstance")},9311:(e,t,r)=>{var i=r(4132),s=Math.max,a=Math.min;e.exports=function(e,t){e=i(e);return e<0?s(e+t,0):a(e,t)}},9358:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},9391:(e,t,r)=>{var i=r(8744),r=r(7345);i("toPrimitive"),r()},9527:(e,t,r)=>{r(8744)("isConcatSpreadable")},9666:(e,t,r)=>{var i=r(3984),s=r(6683),a=r(5330);e.exports=function(e,t,r){return a&&i(t=t.constructor)&&t!==r&&s(t=t.prototype)&&t!==r.prototype&&a(e,t),e}},9678:(e,t,r)=>{var i=r(6738),s=r(4717),a=r(2850),n=r(7096),o=r(5630)("iterator");e.exports=function(e){if(!a(e))return s(e,o)||s(e,"@@iterator")||n[i(e)]}},9712:(e,t,r)=>{r(8744)("split")}},i={};function vs(e){var t=i[e];return void 0!==t||(t=i[e]={exports:{}},r[e].call(t.exports,t,t.exports,vs)),t.exports}vs.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return vs.d(t,{a:t}),t},vs.d=(e,t)=>{for(var r in t)vs.o(t,r)&&!vs.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},vs.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),vs.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),vs.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};{var ys={};vs.r(ys),vs.d(ys,{createStorage:()=>ee}),vs(2597),vs(3034),vs(2044),vs(4602),vs(1810),vs(4689),vs(3978),vs(7920),vs(1916),vs(6849);class Vc{get smartAutoPlay(){return this.instance.inSmartAutoPlay}constructor(e){this.instance=e,this.video={currentTime:0},this.analytics={player:{options:{id:this.instance.config.id}}},this.instance.addEventListener("video:timeupdate",e=>{this.video.currentTime=e.detail.time})}on(e,t){"timeupdate"===e&&this.instance.addEventListener("video:timeupdate",e=>{t(e.detail.time)})}}class Gc{constructor(){this.doc=document,this.instances=[],this.win=window,this.obeserveInstances()}obeserveInstances(){let t=new Set;this.doc.addEventListener("player:ready",e=>{t.has(e.detail.player)||(t.add(e.detail.player),e=new Vc(e.detail.player),this.instances.push(e))})}}Gc.smartplayer=new Gc;var bs,Js,Es=()=>{window.smartplayer||(console.log("ApiCompat: loaded"),window.smartplayer=Gc.smartplayer)};function Ts({prefix:e,suffix:t}={}){return void 0!==window.crypto&&"function"==typeof window.crypto.randomUUID?""+(null!=e?e:"")+window.crypto.randomUUID()+(null!=t?t:""):""+(null!=e?e:"")+"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})+(null!=t?t:"")}document.addEventListener("DOMContentLoaded",Es),window.addEventListener("load",Es),"complete"===document.readyState&&Es(),(Es=bs=bs||{}).ANALYTICS_SEND_EVENT="analytics:send-event",Es.ANALYTICS_STARTED="analytics:started",Es.CALLACTION_ACTIVE="callaction:active",Es.CALLACTION_ELEMENTS_CHANGED="callaction:elements-changed",Es.CALLACTION_CONNECTED="callaction:connected",Es.CONTROL_BAR_CLOSER="control-bar:closer",Es.CONTROLS_ACTIVE="controls:active",Es.CONTROLS_INACTIVE="controls:inactive",Es.CONTROLS_ITEMS="controls:items",Es.CONVERSION_TRACKING_DISABLED="conversion-tracking:disabled",Es.CONVERSION_TRACKING_ENABLED="conversion-tracking:enabled",Es.CONVERSION_TRACKING_UPDATE="conversion-tracking:update",Es.FAKEBAR_ACTIVE="fakebar:active",Es.FAKEBAR_INACTIVE="fakebar:inactive",Es.FAKEBAR_PROGRESS="fakebar:progress",Es.FAKEBAR_WIDTH="fakebar:width",Es.FULLSCREEN_ENTER="fullscreen:enter",Es.FULLSCREEN_EXIT="fullscreen:exit",Es.HEADLINE_ACTIVE="headline:active",Es.HEADLINE_CHANGED="headline:changed",Es.HEADLINE_INACTIVE="headline:inactive",Es.HEADLINE_RENDERED="headline:rendered",Es.HLS_FIRST_SEGMENT_LOADED="first-segment-loaded",Es.HLS_LEVEL_SWITCHED="level-switched",Es.HLS_LEVELS_LOADED="levels-loaded",Es.HLS_MOUNT="mount",Es.IFRAME_CONNECTED="iframe:connected",Es.IFRAME_OPEN_LINK="iframe:open-link",Es.LICENSE_ALLOWED="license:allowed",Es.LICENSE_DENIED="license:denied",Es.LICENSE_ERROR="license:error",Es.MINIHOOK_ACTIVE="minihook:active",Es.MINIHOOK_INACTIVE="minihook:inactive",Es.MINIHOOK_ITEMS="minihook:items",Es.PITCH_TIME="pitch:time",Es.PLAYER_BLOCKED="player:blocked",Es.PLAYER_CONFIG_UPDATED="player:config-updated",Es.PLAYER_EXIT_CLICK="player:exit-click",Es.PLAYER_OFFLINE="player:offline",Es.PLAYER_ONLINE="player:online",Es.PLAYER_READY="player:ready",Es.PLAYER_RESIZE="player:resize",Es.PLAYER_UNBLOCKED="player:unblocked",Es.PRELOAD_EXPIRED="preload:expired",Es.PRELOAD_REMOVED="preload:removed",Es.RESUME_ACTIVE="resume:active",Es.RESUME_CONTINUE="resume:continue",Es.RESUME_INACTIVE="resume:inactive",Es.RESUME_RESTART="resume:restart",Es.SMARTAUTOPLAY_ACTIVE="smartautoplay:active",Es.SMARTAUTOPLAY_INACTIVE="smartautoplay:inactive",Es.SMARTAUTOPLAY_PLAY="smartautoplay:play",Es.SMARTAUTOPLAY_PROBE_SUCCESS="smartautoplay:probe-success",Es.SMARTAUTOPLAY_SELECTED="smartautoplay:selected",Es.SMARTAUTOPLAY_VIDEO_READY="smartautoplay:video-ready",Es.SUBTITLE_ACTIVE="subtitle:active",Es.SUBTITLE_CONFIG_CHANGE="subtitle:config-change",Es.SUBTITLE_INACTIVE="subtitle:inactive",Es.SUBTITLE_TRACK_CHANGE="subtitle:track-change",Es.TURBO_ACTIVE="turbo:active",Es.TURBO_INACTIVE="turbo:inactive",Es.TURBO_SPEED_CHANGED="turbo:speed-changed",Es.TURBO_TYPE="turbo:type",Es.URL_INJECTION="url-injection",Es.VIDEO_CANPLAY="video:canplay",Es.VIDEO_CANPLAYTHROUGH="video:canplaythrough",Es.VIDEO_ENDED="video:ended",Es.VIDEO_FORWARD="video:forward",Es.VIDEO_LOADEDDATA="video:loadeddata",Es.VIDEO_LOADEDMETADATA="video:loadedmetadata",Es.VIDEO_PAUSE="video:pause",Es.VIDEO_PLAY="video:play",Es.VIDEO_PLAYING="video:playing",Es.VIDEO_PROGRESS="video:progress",Es.VIDEO_READY="video:ready",Es.VIDEO_REWIND="video:rewind",Es.VIDEO_SPEEDCHANGE="video:speedchange",Es.VIDEO_TIMEUPDATE="video:timeupdate",Es.VIDEO_TIMEUPDATE_MS="video:timeupdate-ms",Es.VIDEO_VOLUMECHANGE="video:volumechange",Es.VIDEO_WAITING="video:waiting",(Es=Js=Js||{}).LOW="low",Es.MEDIUM="medium",Es.HIGH="high";class Hc{constructor(e,t){this.value=e,this.next=t}hasReference(e){let t=this;for(;t;){if(t.value===e)return!0;t=t.next}return!1}}function ea(e){return e instanceof Object&&function e(t,r){for(var i in r=new Hc(t,r),t)if((i=t[i])instanceof Object&&(r.hasReference(i)||e(i,r)))return!0;return!1}(e,null)}class jc extends Error{constructor(e,t,r,i,s){super(e),this.module=t,this.traceId=r,this.spanId=i,this.metadata=s}}class zc extends Error{constructor(e,t,r,i,s,a){super(e),this.module=t,this.traceId=r,this.spanId=i,this.network=s,this.metadata=a}}function ta(e){return""!==e.canPlayType("application/vnd.apple.mpegURL")}function ra(){return/chrome/i.test(window.navigator.userAgent)}function _s(){return/mobile/i.test(window.navigator.userAgent)}function ia(){return navigator.vendor&&-1{e=[`${e=e,ra()?`${C[e]}[${e.toLocaleUpperCase()}]:`+P:e.toLocaleUpperCase()} `+t];return r&&e.push(r),e},x=["trace","debug","info","warning","error"],O=e=>{try{var t=/^\[(.*)\]|^(\w+):\s/g.exec(e);return(null==t?void 0:t[1])||(null==t?void 0:t[2])||"Unknown"}catch(e){return"Unknown"}},M=()=>"deviceMemory"in navigator&&"number"==typeof navigator.deviceMemory?1024*navigator.deviceMemory*1024*1024:void 0;class Kc{constructor(e){this.loggerOptions=e,this.traceId=null,this.contexts={},this.sentryKey="c66faa8e28e47bb7a9baa128334e4b48",this.sentryUrl="https://sentry.io/api/4509130195468288/envelope/"}send(e,t){this.request(e,t)}stackToFrame(e){let s=/at (.*) \((.*):(\d+):(\d+)\)/;return e.split("\n").map(e=>{var t,r,i,e=e.match(s);return e?([,e,t,r,i]=e,{colno:parseInt(i),filename:t,function:e,in_app:!0,lineno:parseInt(r)}):null}).filter(e=>null!==e)}safeObject(e){try{if(!ea(e))return e}catch(e){}}buildEnvelope(e,t){return JSON.stringify({breadcrumbs:t.map(e=>Object.assign(Object.assign({},e),{data:this.safeObject(e.data)})),contexts:{device:this.deviceContext(),gpu:this.gpuContext()},environment:"production",event_id:Ts(),exception:{values:[{value:e.message,module:e.module,stacktrace:{frames:this.stackToFrame(e.stack||"")}}]},extra:{metadata:this.safeObject(e.metadata),player_configs:this.loggerOptions.player_configs,device_id:this.loggerOptions.device_id,session_id:this.loggerOptions.session_id,referer:document.referrer,url:window.location.href,network:e instanceof zc?{response:{status:null==(t=e.network.response)?void 0:t.status,statusText:null==(t=e.network.response)?void 0:t.statusText,body:null==(t=e.network.response)?void 0:t.body},request:{url:e.network.request.url,method:e.network.request.method,headers:e.network.request.headers,data:e.network.request.body}}:void 0},level:"error",logger:"smartplayer",platform:"javascript",release:"smartplayer@4.2.0.4",request:e instanceof zc?{url:e.network.request.url,method:e.network.request.method,headers:e.network.request.headers,data:e.network.request.body}:void 0,sdk:{integrations:["Logger"],name:"smartplayer",version:"4.2.0.4"},server_name:window.location.hostname,timestamp:(new Date).getTime()/1e3,transaction:e.module||"Unknown",user:{id:null==(t=this.loggerOptions.player_configs)?void 0:t.oid,ip_address:"{{auto}}"}})}deviceContext(){var e;return this.contexts.device||(this.contexts.device={arch:navigator.platform,device_type:/Mobi|Android|iPhone|iPad|Windows Phone/i.test(navigator.userAgent)?"Handheld":"Desktop",family:navigator.platform,language:navigator.language,manufacturer:navigator.vendor||void 0,memory_size:M(),model:navigator.userAgent.split(/[()]/)[1],name:navigator.userAgent,online:navigator.onLine,orientation:null!=(e=null==(e=window.screen.orientation)?void 0:e.type)&&e.includes("portrait")?"portrait":"landscape",processor_count:navigator.hardwareConcurrency,screen_density:window.devicePixelRatio,screen_height_pixels:window.screen.height,screen_resolution:window.screen.width+"x"+window.screen.height,screen_width_pixels:window.screen.width,supports_accelerometer:"DeviceMotionEvent"in window,supports_audio:"AudioContext"in window,supports_gyroscope:"DeviceOrientationEvent"in window,supports_location_service:"geolocation"in navigator,supports_vibration:"vibrate"in navigator,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone}),this.contexts.device}gpuContext(){var e,t;return this.contexts.gpu||(this.contexts.gpu={api_type:window.WebGLRenderingContext?"WebGL":"Unknown",memory_size:M(),multi_threaded_rendering:!1,name:(t=(t=document.createElement("canvas")).getContext("webgl")||t.getContext("experimental-webgl"))&&(e=t.getExtension("WEBGL_debug_renderer_info"))?t.getParameter(e.UNMASKED_RENDERER_WEBGL):"Unknown",npot_support:document.createElement("canvas").getContext("webgl")?"Full":"Unknown",vendor_name:(t=(t=document.createElement("canvas")).getContext("webgl")||t.getContext("experimental-webgl"))&&(e=t.getExtension("WEBGL_debug_renderer_info"))?t.getParameter(e.UNMASKED_VENDOR_WEBGL):"Unknown",version:(t=document.createElement("canvas").getContext("webgl"))?t.getParameter(t.VERSION):"Unknown"}),this.contexts.gpu}request(e,t){var r=new XMLHttpRequest;r.open("POST",this.sentryUrl,!0),r.setRequestHeader("Content-Type","text/plain;charset=UTF-8"),r.setRequestHeader("X-Sentry-Auth",`Sentry sentry_version=7, sentry_key=${this.sentryKey}, sentry_client=smartplayer/4.1.0`),r.withCredentials=!1,r.send(this.buildEnvelope(e,t))}}class Yc{constructor(e){this.shouldDisplayLog=e}debug(e,t){this.shouldDisplayLog("debug",e)&&console.debug(...D("debug",e,t))}error(e,t){this.shouldDisplayLog("error",e)&&console.error(...D("error",e,t))}info(e,t){this.shouldDisplayLog("info",e)&&console.info(...D("info",e,t))}trace(e,t){this.shouldDisplayLog("trace",e)&&console.debug(...D("trace",e,t))}warning(e,t){this.shouldDisplayLog("warning",e)&&console.warn(...D("warning",e,t))}}class Wc{constructor(e,t){this.shouldDisplayLog=e,this.onEnd=t,this.level="debug",this.description="",this.messages=[],this.logMessage=new Yc(()=>!0)}group(e,t){return this.level=e,this.description=t,this}message(e,t){return this.messages.push({message:e,metadata:t}),this}end(){if(this.onEnd(this.level,this.description,this.messages),this.shouldDisplayLog(this.level,this.description)){console.groupCollapsed(...D(this.level,this.description));let t=(this.logMessage[this.level]||this.logMessage.info).bind(this.logMessage);this.messages.forEach(e=>t(e.message,e.metadata)),console.groupEnd()}}}let F=["trace","debug","info","warning","error"];class qc{constructor(e,t={}){this.named=e,this.options=t,this.breadcrumb=[],this.onGroupEnd=(e,t,r)=>{this.addCrumb("trace"===e?"debug":e,t,r),"error"===e&&this.sendErrorToMiddleware(t,r)},this.sendNetworkErrorToMiddleware=(e,t)=>{try{this.errorMiddleware.send(({traceId:r,message:i,network:s,metadata:a}=[{traceId:this.traceId,message:e,network:t}][0],n=O(i),new zc(i,n,r,Ts(),s,a)),this.breadcrumb)}catch(e){console.error(e)}var r,i,s,a,n},this.sendErrorToMiddleware=(e,t)=>{try{this.errorMiddleware.send(({traceId:r,message:i,metadata:s}=[{traceId:this.traceId,message:e,metadata:t}][0],a=O(i),new jc(i,a,r,Ts(),s)),this.breadcrumb)}catch(e){console.error(e)}var r,i,s,a},this.addCrumb=(e,t,r)=>{this.breadcrumb.push({level:e,message:t,data:r,timestamp:(new Date).getTime()/1e3}),5{var r,t=F.indexOf(t),i=F.indexOf(qc.level);try{return null!=(r=qc.searchMatch)&&r.length&&e?new RegExp(decodeURIComponent(qc.searchMatch),"i").test(e)&&i<=t:i<=t}catch(e){return i<=t}},this.prefixedMessage=e=>this.named?this.named+": "+e:e;var{logLevel:e,searchMatch:t}=(()=>{try{var e=new URL(window.location.href),t=e.searchParams.get("logLevel");return{logLevel:t&&x.includes(t.toLocaleLowerCase())?t:null,searchMatch:e.searchParams.get("logMatch")}}catch(e){return{logLevel:null,searchMatch:null}}})();e&&(qc.level=e),t&&(qc.searchMatch=t),this.traceId=Ts(),this.errorMiddleware=new Kc(this.options),this.logMessage=new Yc((e,t)=>this.shouldDisplayLog(e,t))}set loggerOptions(e){this.options=Object.assign(Object.assign({},this.options),e),this.errorMiddleware.loggerOptions=this.options}debug(e,t){this.addCrumb("debug",e,t),this.logMessage.debug(this.prefixedMessage(e),t)}network(e,t){this.addCrumb("error",e,t),this.sendNetworkErrorToMiddleware(e,t),this.logMessage.error(this.prefixedMessage(e),t)}error(e,t){this.addCrumb("error",e,t),this.sendErrorToMiddleware(e,t),this.logMessage.error(this.prefixedMessage(e),t)}info(e,t){this.addCrumb("info",e,t),this.logMessage.info(this.prefixedMessage(e),t)}trace(e,t){this.addCrumb("debug",e,t),this.logMessage.trace(this.prefixedMessage(e),t)}warn(e,t){this.addCrumb("warning",e,t),this.logMessage.warning(this.prefixedMessage(e),t)}group(e,t){return new Wc(()=>this.shouldDisplayLog(e,t),this.onGroupEnd).group(e,this.prefixedMessage(t))}}qc.level="warning",qc.searchMatch=void 0;class Ks{get config(){return this.player.config}constructor(e){var t;this.player=e,this.mounted=!1,this.logger=new qc(this.constructor.controllerName,{player_configs:e.config,device_id:null==(t=e.analytics)?void 0:t.deviceId,session_id:null==(t=e.analytics)?void 0:t.sessionId}),this.player.addController(this)}hostConnected(){this.checkRequirements()&&(this.init(),this.mount())}hostUpdated(){!this.mounted&&this.checkRequirements()&&(this.init(),this.mount())}init(){this.logger.error("method not implemented")}checkRequirements(){return this.logger.trace("checking requirements"),this.constructor.requirements.every(e=>e(this.player))}mount(){this.mounted=!0}}Ks.controllerName="PlayerController",Ks.requirements=[];var aa=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};class Xc extends Ks{constructor(){super(...arguments),this.hasSmartAutoplayActive=!1,this.isDestroyed=!1,this.isProbing=!1,this.probeAttempts=0,this.probeConfig={enabled:!0,maxAttempts:10,probeInterval:2e3,probeTimeout:1e3,triggerEvents:["scroll","click","keydown","touchstart"]},this.probeIntervalId=null,this.probeVideo=null,this.userInteractionDetected=!1,this.onSmartAutoplayActive=()=>{this.hasSmartAutoplayActive=!0,this.logger.trace("SmartAutoPlay activated, probe controller ready"),this.userInteractionDetected&&this.startProbing()},this.onSmartAutoplayInactive=()=>{this.hasSmartAutoplayActive=!1,this.logger.trace("SmartAutoPlay deactivated, stopping probes"),this.stopProbing()},this.onUserInteraction=()=>{this.userInteractionDetected||(this.userInteractionDetected=!0,this.logger.trace("User interaction detected, starting probes"),this.startProbing())}}destroy(){var e;this.isDestroyed=!0,this.logger.debug("Destroying BackgroundAutoplayProbeController"),this.stopProbing(),this.player.removeEventListener(bs.SMARTAUTOPLAY_ACTIVE,this.onSmartAutoplayActive),this.player.removeEventListener(bs.SMARTAUTOPLAY_INACTIVE,this.onSmartAutoplayInactive),null!=(e=this.probeConfig.triggerEvents)&&e.forEach(e=>{document.removeEventListener(e,this.onUserInteraction)}),this.probeVideo&&this.probeVideo.parentNode&&(this.probeVideo.pause(),this.probeVideo.src="",this.probeVideo.parentNode.removeChild(this.probeVideo),this.probeVideo=null)}getStats(){return{hasSmartAutoplayActive:this.hasSmartAutoplayActive,isDestroyed:this.isDestroyed,isProbing:this.isProbing,maxAttempts:this.probeConfig.maxAttempts,probeAttempts:this.probeAttempts,userInteractionDetected:this.userInteractionDetected}}init(){var e;this.probeConfig.enabled?(this.logger.debug("Initializing BackgroundAutoplayProbeController"),this.probeVideo=this.createProbeVideo(),document.body.appendChild(this.probeVideo),this.logger.debug("Probe video element created",{target:this.player}),this.player.addEventListener(bs.SMARTAUTOPLAY_ACTIVE,this.onSmartAutoplayActive,{once:!0}),this.player.addEventListener(bs.SMARTAUTOPLAY_INACTIVE,this.onSmartAutoplayInactive,{once:!0}),this.logger.debug("Listening for user interaction events",{events:this.probeConfig.triggerEvents}),null!=(e=this.probeConfig.triggerEvents)&&e.forEach(e=>{document.addEventListener(e,this.onUserInteraction,{once:!1,passive:!0})}),null!=(e=this.player.controllers.analytics)&&e.metric("background_autoplay_probe.initialized",1)):this.logger.debug("Background autoplay probe disabled")}updateConfig(e){this.probeConfig=Object.assign(Object.assign({},this.probeConfig),e),this.logger.debug("Background autoplay probe config updated",this.probeConfig)}attemptProbe(){return aa(this,void 0,void 0,function*(){var e;if(!this.probeVideo||this.isDestroyed)return!1;try{this.logger.trace("Attempting autoplay probe"),this.probeVideo.currentTime=0;var t=this.probeVideo.play(),r=new Promise((e,t)=>{setTimeout(()=>t(new Error("Probe timeout")),this.probeConfig.probeTimeout)});return yield Promise.race([t,r]),this.logger.info("Background autoplay probe succeeded - audio autoplay is now possible"),null!=(e=this.player.controllers.analytics)&&e.metric("background_autoplay_probe.success",1),!0}catch(e){t=e.message;return t.includes("no supported sources")||t.includes("NotSupportedError")?(this.logger.trace("No supported sources, but autoplay not blocked - treating as success"),null!=(r=this.player.controllers.analytics)&&r.metric("background_autoplay_probe.success",1),!0):(this.logger.trace("Background autoplay probe failed",{error:t}),!1)}})}createProbeVideo(){var e=document.createElement("video");return e.style.position="fixed",e.style.top="-1px",e.style.left="-1px",e.style.width="1px",e.style.height="1px",e.style.opacity="0",e.style.pointerEvents="none",e.style.zIndex="9",e.style.backgroundColor="transparent",e.style.display="block",e.style.objectFit="fill",e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex","-1"),e.src="https://cdn.converteai.net/1.mp4",e.loop=!1,e.muted=!1,e.playsInline=!0,e}performProbe(){return aa(this,void 0,void 0,function*(){var e;this.isProbing&&!this.isDestroyed&&(this.probeAttempts++,this.probeAttempts>(null!=(e=this.probeConfig.maxAttempts)?e:10)?(this.logger.trace("Max probe attempts reached, stopping"),null!=(e=this.player.controllers.analytics)&&e.metric("background_autoplay_probe.max_attempts_reached",1),this.stopProbing()):(yield this.attemptProbe())&&this.hasSmartAutoplayActive&&(this.logger.info("Probe succeeded, triggering SmartAutoPlay audio play"),this.player.dispatchEvent(new CustomEvent(bs.SMARTAUTOPLAY_PROBE_SUCCESS))))})}startProbing(){var e;this.probeConfig.enabled&&!this.isProbing&&this.hasSmartAutoplayActive&&!this.isDestroyed&&(this.isProbing=!0,this.probeAttempts=0,this.logger.trace("Starting background autoplay probing"),null!=(e=this.player.controllers.analytics)&&e.metric("background_autoplay_probe.started",1),this.performProbe(),this.probeIntervalId=window.setInterval(()=>{this.performProbe()},this.probeConfig.probeInterval))}stopProbing(){this.probeIntervalId&&(clearInterval(this.probeIntervalId),this.probeIntervalId=null),this.isProbing=!1,this.logger.trace("Stopped background autoplay probing")}}Xc.controllerName="BackgroundAutoplayProbeController";let N=({timeout:t,delay:r,isReady:i,shouldResolveImmediately:s=!0})=>{let a=null,n=null;return new Promise(e=>{if(s&&i())return e(!0);a=setTimeout(()=>{n&&clearInterval(n),a&&clearTimeout(a),e(!1)},t),n=setInterval(()=>{i()&&(n&&clearInterval(n),a&&clearTimeout(a),e(!0))},r)})};var na,oa=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})},la=function(e,t,r,i){if("a"===r&&!i)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e===t&&i:t.has(e))return"m"===r?i:"a"===r?i.call(e):i?i.value:t.get(e);throw new TypeError("Cannot read private member from an object whose class did not declare it")};class Qc extends Ks{constructor(){super(...arguments),na.set(this,{finished:!1,played:!1,resume:!1,smartAutoPlay:!1})}anyBlocker(...e){return e.some(e=>la(this,na,"f")[e])}anyBlockerAsync(e){return oa(this,arguments,void 0,function*(e,t=100){return N({timeout:t,delay:10,isReady:()=>this.anyBlocker(...e),shouldResolveImmediately:!1})})}block(e){la(this,na,"f")[e]||(this.logger.info("block "+e),la(this,na,"f")[e]=!0,this.player.dispatchEvent(new CustomEvent(bs.PLAYER_BLOCKED,{detail:{blocker:e}})),this.player.deepUpdate(),this.logger.debug("Blocking "+e))}init(){this.logger.debug("init");var e=()=>{this.block("played")};this.player.addEventListener(bs.SMARTAUTOPLAY_PLAY,e),this.player.addEventListener(bs.RESUME_CONTINUE,e),this.player.addEventListener(bs.RESUME_RESTART,e)}noneBlocker(...e){return e.every(e=>!la(this,na,"f")[e])}noneBlockerAsync(e){return oa(this,arguments,void 0,function*(e,t=100){return!(yield this.anyBlockerAsync(e,t))})}unblock(e){la(this,na,"f")[e]&&(this.logger.info("unblock "+e),la(this,na,"f")[e]=!1,this.player.dispatchEvent(new CustomEvent(bs.PLAYER_UNBLOCKED,{detail:{blocker:e}})),this.player.deepUpdate(),this.logger.debug("Unblocking "+e))}}na=new WeakMap,Qc.controllerName="BlockerController";class Zc extends Ks{init(){this.config.canary&&this.config.canary.active&&this.player.controllers.analytics.event("player_canary_view",{player_canary_test_id:this.config.canary.canary_id,player_id:this.config.canary.player_id})}}Zc.controllerName="CanaryController";var ha,da,ca=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})},ua=function(e,t,r,i,s){if("m"===i)throw new TypeError("Private method is not writable");if("a"===i&&!s)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e===t&&s:t.has(e))return"a"===i?s.call(e,r):s?s.value=r:t.set(e,r),r;throw new TypeError("Cannot write private member to an object whose class did not declare it")},fa=function(e,t,r,i){if("a"===r&&!i)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e===t&&i:t.has(e))return"m"===r?i:"a"===r?i.call(e):i?i.value:t.get(e);throw new TypeError("Cannot read private member from an object whose class did not declare it")};class Jc extends Ks{constructor(){super(...arguments),ha.set(this,1),da.set(this,!1),this.canPlay=!1,this.onCanPlay=()=>{this.canPlay=!0},this.onWaiting=()=>{this.canPlay=!1}}init(){this.player.addEventListener(bs.VIDEO_CANPLAY,this.onCanPlay),this.player.addEventListener(bs.VIDEO_WAITING,this.onWaiting)}destroy(){this.player.removeEventListener(bs.VIDEO_CANPLAY,this.onCanPlay),this.player.removeEventListener(bs.VIDEO_WAITING,this.onWaiting)}awaitPlay(){return ca(this,arguments,void 0,function*(e=5e3){try{var t=yield N({timeout:e,delay:50,isReady:()=>this.canPlay});if(this.logger.debug("awaitPlay: isReady?",t),t)return this.play();this.logger.error("Video is not ready to play, waiting for canplay event"),this.player.addEventListener(bs.VIDEO_CANPLAY,this.play,{once:!0})}catch(e){this.logger.error("Failed to await play",{error:e})}})}mute(){try{this.player.ready&&this.player.video?(ua(this,ha,this.player.video.volume,"f"),this.player.video.volume=0,this.player.muted=!0):this.logger.warn("mute: host not ready")}catch(e){this.logger.error("Failed to mute video",{error:e})}}pause(){try{this.player.ready?this.player.video.pause():this.logger.warn("pause: host not ready")}catch(e){this.logger.error("Failed to pause video",{error:e})}}play(){return ca(this,void 0,void 0,function*(){try{this.player.controllers.blockers.noneBlocker("played","smartAutoPlay","resume")&&this.player.controllers.blockers.block("played"),this.player.ready?(this.logger.info("play"),yield this.player.video.play(),this.logger.debug("play: video played")):this.logger.warn("play: host not ready")}catch(e){e instanceof Error?this.logger.error("Failed to play video: "+e.message,{error:e}):this.logger.error("Failed to play video",{error:e})}})}seek(e){try{this.player.ready&&this.player.video?(this.player.controllers.blockers.noneBlocker("smartAutoPlay","resume")&&this.player.controllers.blockers.anyBlocker("played")&&this.logger.info("seek",e),this.player.video.currentTime=e,this.player.dispatchEvent(new CustomEvent(bs.VIDEO_TIMEUPDATE,{detail:{time:e}})),this.player.dispatchEvent(new CustomEvent(bs.VIDEO_TIMEUPDATE_MS,{detail:{time:e}}))):this.logger.warn("seek: host not ready")}catch(e){this.logger.error("Failed to seek video",{error:e})}}speed(e){try{this.player.ready?this.player.video.playbackRate=e:this.logger.warn("speed: host not ready")}catch(e){this.logger.error("Failed to set video speed",{error:e})}}toggle(){var e,t,r;try{this.logger.group("debug","toggle").message("#played",fa(this,da,"f")).message("video played",!(null==(e=this.player.video)||!e.played)).message("video paused",null==(t=this.player.video)?void 0:t.paused).end(),null!=(r=this.player.video)&&r.paused?this.play():this.pause()}catch(e){this.logger.error("Failed to toggle play/pause",{error:e})}}unmute(){try{this.player.ready&&this.player.video?(fa(this,ha,"f")<=.05?this.player.video.volume=1:this.player.video.volume=fa(this,ha,"f"),this.player.muted=!1):this.logger.warn("unmute: host not ready")}catch(e){this.logger.error("Failed to unmute video",{error:e})}}volume(e){try{this.player.ready?(0e&&!!t];var pa=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};let U={canplay:bs.VIDEO_CANPLAY,canplaythrough:bs.VIDEO_CANPLAYTHROUGH,loadeddata:bs.VIDEO_LOADEDDATA,loadedmetadata:bs.VIDEO_LOADEDMETADATA,playing:bs.VIDEO_PLAYING,progress:bs.VIDEO_PROGRESS,ratechange:bs.VIDEO_SPEEDCHANGE,volumechange:bs.VIDEO_VOLUMECHANGE,waiting:bs.VIDEO_WAITING};class eu extends Ks{constructor(){super(...arguments),this.lastTime=0}init(){return pa(this,void 0,void 0,function*(){this.logger.trace("init",[this.player.video,this.player]),this.videoObserver();try{this.player.video.addEventListener("play",()=>pa(this,void 0,void 0,function*(){var e=yield this.player.controllers.blockers.anyBlockerAsync(["played"]);this.logger.group("trace","Video play").message("CustomEvent",bs.VIDEO_PLAY).message("Video Event: play").message("Expected Blockers: played").message("Blocked",e).end(),e&&(this.logger.info("Video play: dispatching event"),this.player.dispatchEvent(new CustomEvent(bs.VIDEO_PLAY)))})),this.logger.trace("Registered video play event listener"),this.player.video.addEventListener("ended",()=>pa(this,void 0,void 0,function*(){var e=yield this.player.controllers.blockers.anyBlockerAsync(["played"]);this.logger.group("trace","Video ended").message("CustomEvent",bs.VIDEO_ENDED).message("Video Event: ended").message("Expected Blockers: played").message("Blocked",e).end(),e&&(this.logger.info("Video ended: dispatching event"),this.player.dispatchEvent(new CustomEvent(bs.VIDEO_ENDED,{detail:{time:this.player.video.currentTime}})))})),this.logger.trace("Registered video ended event listener");let r=0;this.player.video.addEventListener("timeupdate",e=>pa(this,void 0,void 0,function*(){var e,t;(yield this.player.controllers.blockers.noneBlockerAsync(["played"]))||(e=this.player.video,this.player.dispatchEvent(new CustomEvent(bs.VIDEO_TIMEUPDATE_MS,{detail:{time:e.currentTime}})),(t=Math.floor(null!=(t=e.currentTime)?t:0))!==r&&(r=t,this.player.dispatchEvent(new CustomEvent(bs.VIDEO_TIMEUPDATE,{detail:{time:e.currentTime}}))))})),this.logger.trace("Registered video timeupdate event listener"),this.player.video.addEventListener("pause",()=>pa(this,void 0,void 0,function*(){var e=yield this.player.controllers.blockers.anyBlockerAsync(["played"]);this.logger.group("trace","Video paused").message("CustomEvent",bs.VIDEO_PAUSE).message("Video Event: pause").message("Expected Blockers: played").message("Blocked",e).end(),e&&(this.logger.info("Video paused: dispatching event"),this.player.dispatchEvent(new CustomEvent(bs.VIDEO_PAUSE,{detail:{time:this.player.video.currentTime}})),this.player.deepUpdate())})),this.logger.trace("Registered video paused event listener")}catch(e){this.logger.error("Failed to add video event listener",{error:e})}})}videoObserver(){let r=this.player.video;Object.entries(U).forEach(([e,t])=>{r.addEventListener(e,()=>{this.logger.info("Video event",e),this.player.dispatchEvent(new CustomEvent(t,{detail:{video:r}}))})})}}eu.controllerName="EventsController",eu.requirements=[({ready:e,video:t})=>e&&!!t];var ga=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};class tu extends Ks{get showing(){return this.player.player.classList.contains("show-controls")}constructor(e){super(e),this.blockClose=!1,this.doc=document,this.hide=()=>{var e;this.blockClose||this.player.paused||(clearTimeout(this.showControlsTimeout),e=this.player.player,this.logger.debug("hide controls"),e.classList.remove("show-controls"),this.player.dispatchEvent(new CustomEvent(bs.CONTROLS_INACTIVE)))},this.onFirstPlay=()=>{this.show(),this.player.removeEventListener(bs.VIDEO_PLAY,this.onFirstPlay)},this.onKeyBindingBlocker=()=>{this.blockClose=!this.blockClose},this.show=()=>ga(this,void 0,void 0,function*(){try{var e;this.player.controllers.blockers.anyBlocker("resume","smartAutoPlay")||this.player.controllers.blockers.anyBlocker("played")&&(clearTimeout(this.showControlsTimeout),e=this.player.player,this.showControlsTimeout=setTimeout(()=>{this.blockClose?this.show():this.hide()},tu.hideTime),e.classList.add("show-controls"),this.player.dispatchEvent(new CustomEvent(bs.CONTROLS_ACTIVE)))}catch(e){this.logger.error("Error showing controls",e)}}),this.touch=(e,t)=>ga(this,void 0,void 0,function*(){try{this.player.controllers.blockers.anyBlocker("played")&&(e.preventDefault(),e.stopPropagation(),this.player.pauseOneTouch?(t(),this.show()):this.showing?t():this.show())}catch(e){this.logger.error("Error handling touch event",e)}}),this.keyBindingBlocker=((t,r)=>{let i=0;return e=>{e.key===t[i]?++i===t.length&&(r(),i=0):i=0}})(["v","c","b"],this.onKeyBindingBlocker)}dispatchCloser(){this.player.dispatchEvent(new CustomEvent(bs.CONTROL_BAR_CLOSER))}init(){return ga(this,void 0,void 0,function*(){this.doc.addEventListener("keydown",this.keyBindingBlocker),this.player.addEventListener(bs.VIDEO_PLAY,this.onFirstPlay,{once:!0})})}}tu.controllerName="BarController",tu.hideTime=3500;var ma=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};class ru extends Ks{constructor(){super(...arguments),this.state={action_buttons:[],analytics_sent_events:[],controls_hide_time:tu.hideTime,controls_items:{},current_time:0,default_config:this.player.config,fakebar_active:!1,fakebar_progress:0,fakebar_width:0,headline_active:!1,headline_changed:null,minihook_active:!1,minihook_items:[],resume_action:"",resume_initialized:!1,resume_running:!1,smartautoplay_initialized:!1,smartautoplay_running:!1,smartautoplay_selected:null,subtitle_active:!1,subtitle_config:null,subtitle_multiplier:1,turbo_active:!1,turbo_speed:1,turbo_type:"single",video_duration:0,video_muted:!1,video_playing:!1}}get info(){var e;return Object.assign(Object.assign({},this.state),{controls_hide_time:tu.hideTime,current_time:null==(e=this.player.video)?void 0:e.currentTime,default_config:this.player.config,video_duration:null==(e=this.player.video)?void 0:e.duration,video_height:null==(e=this.player.video)?void 0:e.videoHeight,video_muted:null==(e=this.player.video)?void 0:e.muted,video_playing:!(null!=(e=this.player.video)&&e.paused),video_poster:null==(e=this.player.video)?void 0:e.poster,video_src:null==(e=this.player.video)?void 0:e.src,video_volume:null==(e=this.player.video)?void 0:e.volume,video_width:null==(e=this.player.video)?void 0:e.videoWidth})}init(){return ma(this,void 0,void 0,function*(){})}}ru.controllerName="FeaturesController";class iu extends Ks{constructor(){super(...arguments),this.doc=document,this.handleFullscreenChange=()=>{this.logger.debug("fullscreen change",{currentFullscreenElement:this.currentFullscreenElement,isFullscreen:this.isFullscreen}),!this.currentFullscreenElement&&this.isFullscreen&&this.cancel()},this.handleOnKeyDown=e=>{"Escape"===e.key&&this.isFullscreen&&this.cancel()}}get currentFullscreenElement(){return this.doc.fullscreenElement||this.doc.mozFullScreenElement||this.doc.msFullscreenElement}get isFullscreen(){var e;return null!=(e=null==(e=this.player.player)?void 0:e.classList.contains("in-fullscreen"))&&e}active(){var e;this.logger.debug("active fullscreen"),null!=(e=this.player.player)&&e.classList.add("in-fullscreen"),this.requestFullscreenBrowser(),this.player.dispatchEvent(new CustomEvent(bs.FULLSCREEN_ENTER))}cancel(){var e;this.logger.debug("cancel fullscreen"),null!=(e=this.player.player)&&e.classList.remove("in-fullscreen"),this.cancelFullscreenBrowser(),this.player.dispatchEvent(new CustomEvent(bs.FULLSCREEN_EXIT))}cancelAll(){this.cancel()}hostConnected(){super.hostConnected(),this.doc.addEventListener("keydown",this.handleOnKeyDown),this.doc.addEventListener("fullscreenchange",this.handleFullscreenChange),this.doc.addEventListener("mozfullscreenchange",this.handleFullscreenChange),this.doc.addEventListener("msfullscreenchange",this.handleFullscreenChange),this.doc.addEventListener("MSFullscreenChange",this.handleFullscreenChange),this.doc.addEventListener("webkitfullscreenchange",this.handleFullscreenChange)}hostDisconnected(){this.doc.removeEventListener("keydown",this.handleOnKeyDown),this.doc.removeEventListener("fullscreenchange",this.handleFullscreenChange),this.doc.removeEventListener("mozfullscreenchange",this.handleFullscreenChange),this.doc.removeEventListener("msfullscreenchange",this.handleFullscreenChange),this.doc.removeEventListener("MSFullscreenChange",this.handleFullscreenChange),this.doc.removeEventListener("webkitfullscreenchange",this.handleFullscreenChange)}init(){}toggle(){this.isFullscreen?this.cancel():this.active()}cancelFullscreenBrowser(){this.doc.fullscreenElement&&(this.doc.exitFullscreen?this.doc.exitFullscreen():this.doc.mozCancelFullScreen?this.doc.mozCancelFullScreen():this.doc.webkitCancelFullScreen?this.doc.webkitCancelFullScreen():this.doc.msCancelFullScreen?this.doc.msCancelFullScreen():this.doc.msExitFullscreen&&this.doc.msExitFullscreen())}requestFullscreenBrowser(){var e;!_s()&&this.player.player&&((e=this.player.player).requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitEnterFullscreen&&e.webkitEnterFullscreen())}}iu.controllerName="FullscreenController",iu.requirements=[({player:e,ready:t})=>t&&!!e];var va=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};class su extends Ks{constructor(){super(...arguments),this.doc=document,this.lastTime=0,this.visibilityChange=()=>{var e;this.player.ready&&this.player.video&&this.player.controllers.blockers.anyBlocker("played")&&(this.player.controllers.blockers.anyBlocker("smartAutoPlay","resume")||this.player.config.playback.smartPause&&(this.doc.hidden?(this.player.video.pause(),this.lastTime=null!=(e=this.player.video.currentTime)?e:0):(this.player.video.currentTime=this.lastTime,this.player.video.play())))}}init(){return va(this,void 0,void 0,function*(){this.logger.group("trace","init").message("detail",{player:this.player,video:this.player.video}).end(),this.doc.addEventListener("visibilitychange",this.visibilityChange)})}}su.controllerName="HiddenPlayerController",su.requirements=[({ready:e,video:t})=>e&&!!t];let B=(e,t)=>Math.floor(t-e);class au extends Ks{constructor(){super(...arguments),this.win=window,this.buffering_start_time=null,this.lost_connection_time=null,this.video_segments_loaded=[],this.onBufferingStart=()=>{this.buffering_start_time||(this.buffering_start_time=Date.now(),this.trackBufferingStart())},this.onBufferingEnd=()=>{this.buffering_start_time&&(this.trackBufferingEnd(B(this.buffering_start_time,Date.now())),this.buffering_start_time=null)},this.onLostConnection=()=>{this.lost_connection_time||(this.lost_connection_time=Date.now())},this.onRecoveredConnection=()=>{this.lost_connection_time&&(this.trackLostConnection(B(this.lost_connection_time,Date.now())),this.lost_connection_time=null)}}get pageLoadTime(){return this.win._plt}get timeSincePageLoad(){return B(this.pageLoadTime,Date.now())}init(){this.trackTTPI(),this.player.addEventListener(bs.VIDEO_PLAY,()=>{setTimeout(()=>{this.player.addEventListener(bs.VIDEO_WAITING,this.onBufferingStart),this.player.addEventListener(bs.VIDEO_CANPLAY,this.onBufferingEnd)},500)},{once:!0}),this.player.addEventListener(bs.PLAYER_OFFLINE,this.onLostConnection),this.player.addEventListener(bs.PLAYER_ONLINE,this.onRecoveredConnection),this.player.addEventListener(bs.PLAYER_READY,()=>this.trackTTMP(),{once:!0})}destroy(){this.player.removeEventListener(bs.VIDEO_WAITING,this.onBufferingStart),this.player.removeEventListener(bs.VIDEO_CANPLAY,this.onBufferingEnd),this.player.removeEventListener(bs.PLAYER_OFFLINE,this.onLostConnection),this.player.removeEventListener(bs.PLAYER_ONLINE,this.onRecoveredConnection)}trackTTFF(){try{this.player.controllers.analytics.metric("player.ttff",this.timeSincePageLoad)}catch(e){this.logger.error("Error tracking ttff",e)}}trackTTPI(){try{this.player.controllers.analytics.metric("player.ttpi",this.timeSincePageLoad)}catch(e){this.logger.error("Error tracking ttpi",e)}}trackTTMP(){try{this.player.controllers.analytics.metric("player.ttmp",this.timeSincePageLoad)}catch(e){this.logger.error("Error tracking ttmp",e)}}trackBufferingStart(){try{this.player.controllers.analytics.metric("player.buffering",1)}catch(e){this.logger.error("Error tracking buffering rate",e)}}trackBufferingEnd(e){try{this.player.controllers.analytics.metric("player.buffering_duration",e)}catch(e){this.logger.error("Error tracking buffering end",e)}}trackLostConnection(e){try{this.player.controllers.analytics.metric("player.lost_connection",1),this.player.controllers.analytics.metric("player.lost_connection_duration",e)}catch(e){this.logger.error("Error tracking lost connection",e)}}trackAverageVideoDownload(e){try{this.logger.debug("Tracking video download speed",{segments:[...e]});var t=(e=>{var{size:t,duration:r}=e.reduce((e,t)=>(e.size+=t.bytes/1e3,e.duration+=t.request.end-t.request.start,e),{size:0,duration:0});return{size:t/e.length,duration:r/e.length}})(e);this.player.controllers.analytics.metric("player.segment_download_avg_duration_ms",t.duration),this.player.controllers.analytics.metric("player.segment_download_avg_size_kb",t.size)}catch(e){this.logger.error("Error tracking download speed",e)}}trackVideoSegmentLoaded(e){try{this.logger.debug("Tracking video segment",{segment:e}),this.video_segments_loaded.push(e),5===this.video_segments_loaded.length&&this.trackAverageVideoDownload(this.video_segments_loaded)}catch(e){this.logger.error("Error tracking video segment loaded",e)}}}function ya(t,r){if(t){if("closest"in t)return t.closest(r);if("function"==typeof t.matches&&t.matches(r))return t;let e=t.parentElement;for(;e;){if("function"==typeof e.matches&&e.matches(r))return e;e=e.parentElement}}return null}au.controllerName="KPIsController";var ba=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};let V=["vturb-smartplayer",".callaction__html",".callaction__button"];class nu extends Ks{constructor(){super(...arguments),this._updaters={medium:[],high:[],low:[]},this.win=window,this.injectBrowserSearchParams=(t,i)=>{try{if(!i||!V.some(e=>ya(i,e)))return t;let r=new URL(t,this.win.location.href);return this.baseSearchParams.forEach((e,t)=>r.searchParams.set(t,e)),r.toString()}catch(e){return this.logger.error("Failed to update URL",{error:e}),t}},this.urlInjection=e=>{this.logger.group("trace","urlInjection").message("detail",e.detail).end(),(e.detail.priority===Js.HIGH?this._updaters.high:e.detail.priority===Js.MEDIUM?this._updaters.medium:this._updaters.low).push(e.detail.updater)}}get updaters(){return[...this._updaters.low,...this._updaters.medium,...this._updaters.high]}init(){return ba(this,void 0,void 0,function*(){this.baseSearchParams=new URLSearchParams(this.win.location.search),this.baseSearchParams.delete("vl"),this._updaters.low.push(this.injectBrowserSearchParams),this.player.addEventListener(bs.URL_INJECTION,this.urlInjection),this.logger.debug("init",{player:this.player,video:this.player.video})})}}nu.controllerName="LinksController";var Ea=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};class ou extends Ks{constructor(){super(...arguments),this.currentPitchTime=null,this.playerConfigUpdated=e=>{try{this.logger.group("debug","playerConfigUpdated").message("pitchTime",e.detail.player.config.pitchTime).end();let t=e.detail.player.config.pitchTime;this.currentPitchTime!==t&&t&&0!==t&&(this.currentPitchTime=t,this.player.removeEventListener(bs.VIDEO_TIMEUPDATE_MS,this.currentCallback),this.currentCallback=e=>{e.detail.time>=t&&this.player.played&&(this.player.dispatchEvent(new CustomEvent(bs.PITCH_TIME,{detail:{player:this.player}})),this.player.removeEventListener(bs.VIDEO_TIMEUPDATE_MS,this.currentCallback))},this.player.addEventListener(bs.VIDEO_TIMEUPDATE_MS,this.currentCallback))}catch(e){this.logger.error("Failed to update pitch time",{error:e})}},this.currentCallback=()=>{}}init(){return Ea(this,void 0,void 0,function*(){this.player.addEventListener(bs.PLAYER_CONFIG_UPDATED,this.playerConfigUpdated)})}}ou.controllerName="PitchTimeController";var Ta=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};class lu extends Ks{constructor(){super(...arguments),this.callActionSelector=".smartplayer-scroll-event, .smartplayer-call-action, .callaction__button",this.delay=700,this.doc=document}init(){this.logger.debug("init"),this.player.config.playback.active&&(this.player.config.playback.actionAfterFinish&&"loop"===this.player.config.playback.actionAfterFinish.type&&this.setActionAfterFinishLoop(this.player.config.playback.actionAfterFinish),this.player.config.playback.scrollToActionIn)&&this.setScrollToActionIn(this.player.config.playback.scrollToActionIn)}setActionAfterFinishLoop(t){this.logger.debug("setActionAfterFinishLoop"),this.player.addEventListener(bs.VIDEO_ENDED,()=>Ta(this,void 0,void 0,function*(){var e;this.logger.info("video ended",{action:t}),this.player.controls.seek(null!=(e=null==(e=t.properties)?void 0:e.start)?e:0),yield this.player.controls.awaitPlay()}))}setScrollToActionIn(t){this.logger.info("setScrollToActionIn",{scrollToActionIn:t});let r=e=>{e.detail.time>=t&&(this.player.controllers.fullscreen.cancelAll(),setTimeout(()=>{var e,t=[...Array.from(this.doc.querySelectorAll(this.callActionSelector)),...Array.from(this.player.querySelectorAll(this.callActionSelector))];0e&&!!t];var Sa=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};class hu extends Ks{hostDisconnected(){var e;null!=(e=this.resizeObserver)&&e.disconnect()}init(){return Sa(this,void 0,void 0,function*(){this.logger.debug("init");var e=_a(100,()=>{var e;this.logger.debug("resize"),this.player.requestUpdate(),this.player.dispatchEvent(new CustomEvent(bs.PLAYER_RESIZE)),this.player.height=null!=(e=null==(e=this.player.player)?void 0:e.clientHeight)?e:0,this.player.width=null!=(e=null==(e=this.player.player)?void 0:e.clientWidth)?e:0});this.resizeObserver=new ResizeObserver(e),this.resizeObserver.observe(this.player.player),e()})}}hu.controllerName="ResizerController",hu.requirements=[({player:e,ready:t})=>t&&!!e];class du extends Ks{constructor(){super(...arguments),this.preloadLinks=[],this.dnsPrefetchLinks=[],this.prerenderLinks=[]}static get SPEED_CODE_DOMAINS(){return["https://scripts.converteai.net","https://images.converteai.net","https://cdn.converteai.net","https://api.vturb.com"]}static get REQUIRED_LINKS_PRELOAD_AB(){return["https://scripts.converteai.net/{accountId}/ab-test/{playerId}/player.js","https://scripts.converteai.net/lib/js/smartplayer-wc/v4/smartplayer.js"]}static get REQUIRED_LINKS_PRELOAD(){return["https://scripts.converteai.net/{accountId}/players/{playerId}/v4/embed.html","https://scripts.converteai.net/{accountId}/players/{playerId}/v4/player.js","https://scripts.converteai.net/lib/js/smartplayer-wc/v4/smartplayer.js","https://images.converteai.net/{accountId}/players/{playerId}/thumbnail.jpg","https://cdn.converteai.net/{accountId}/{videoId}/main.m3u8"]}static get REQUIRED_LINKS_DNS_PREFETCH(){return["https://cdn.converteai.net","https://scripts.converteai.net","https://images.converteai.net","https://api.vturb.com.br"]}init(){this.logger.debug("initializing speed code detection"),this.player.addEventListener("player:ready",()=>{this.detectSpeedCode()},{once:!0})}requiredLinksTemplate(){var e,t=!!this.player.interface.originalId;return this.logger.debug("AB test detection",{isAbTest:t,abTestId:null==(e=this.player.interface.originalId)?void 0:e.replace("ab-test-","")}),[...t?du.REQUIRED_LINKS_PRELOAD_AB:du.REQUIRED_LINKS_PRELOAD,...du.REQUIRED_LINKS_DNS_PREFETCH]}detectSpeedCode(){var e;this.logger.debug("starting speed code detection"),this.player.isIframe?this.logger.debug("iframe detected, skipping speed code detection"):(this.collectHeadLinks(),e={iframe:0,initializer:"player",present:(e=this.checkSpeedCodePresence())?1:0,correct:this.validateSpeedCode(e)?1:0,extra_links:this.collectExtraLinks()},this.logger.debug("detection result",e),this.notifyResult(e),this.logger.debug("speed code detection completed",e))}collectHeadLinks(){var e=Array.from(document.head.getElementsByTagName("link"));this.preloadLinks=e.filter(e=>"preload"===e.rel),this.dnsPrefetchLinks=e.filter(e=>"dns-prefetch"===e.rel),this.prerenderLinks=e.filter(e=>"prerender"===e.rel),this.logger.debug("collected head links",{preload:this.preloadLinks.length,dnsPrefetch:this.dnsPrefetchLinks.length,prerender:this.prerenderLinks.length})}checkSpeedCodePresence(){var e=[...this.preloadLinks,...this.dnsPrefetchLinks,...this.prerenderLinks],t=e.some(e=>{let t=e.href||"";return du.SPEED_CODE_DOMAINS.some(e=>t.includes(e))});return this.logger.debug("speed code presence check",{isPresent:t,totalLinks:e.length}),t}validateSpeedCode(e){if(!e)return this.logger.debug("speed code validation skipped - not present"),!1;let t=[...this.preloadLinks,...this.dnsPrefetchLinks,...this.prerenderLinks],r=!!this.player.interface.originalId,i=null==(e=this.player.interface.originalId)?void 0:e.replace("ab-test-","");var e=this.requiredLinksTemplate().map(e=>e.replace("{accountId}",this.player.config.oid||"").replace("{playerId}",r?i||"":this.player.config.id||"").replace("{videoId}",(null==(e=this.player.config.video)?void 0:e.id)||"")),s=(this.logger.debug("processed required links",{requiredLinks:e,isAbTest:r,abTestId:i,playerId:this.player.config.id}),e.every(i=>t.some(e=>{var e=e.href||"",t=i.split("/").filter(e=>00r.some(e=>e.includes(t)||t.includes(e)))})));return this.logger.debug("speed code validation",{isCorrect:s,requiredLinks:e.length,foundLinks:t.length,isAbTest:r}),s}collectExtraLinks(){var e=this.preloadLinks.filter(e=>{let t=e.href||"";return du.SPEED_CODE_DOMAINS.some(e=>t.includes(e.replace("https://","")))});this.logger.debug("all vturb preload links",e);let t=!!this.player.interface.originalId,r=null==(s=this.player.interface.originalId)?void 0:s.replace("ab-test-",""),i=(t?du.REQUIRED_LINKS_PRELOAD_AB:du.REQUIRED_LINKS_PRELOAD).map(e=>e.replace("{accountId}",this.player.config.oid||"").replace("{playerId}",t?r||"":this.player.config.id||"").replace("{videoId}",(null==(e=this.player.config.video)?void 0:e.id)||""));this.logger.debug("required links for extra detection",{isAbTest:t,abTestId:r,playerId:this.player.config.id,requiredLinks:i});var s=e.filter(e=>{let t=e.href||"";return!i.some(e=>{e=e.split("/").filter(e=>00r.some(e=>e.includes(t)||t.includes(e)))})}),a=0e.href),allVturbLinksDetails:e.map(e=>e.href),isAbTest:t}),a?1:0}sendAnalytics(e){try{this.player.controllers.analytics.event("speed_code_detected",{present:e.present,correct:e.correct,iframe:e.iframe,initializer:e.initializer,extra_links:e.extra_links}),this.logger.debug("analytics event sent",e)}catch(e){this.logger.warn("failed to send analytics event",e)}}notifyResult(e){this.sendAnalytics(e),this.player&&(this.player.dispatchEvent(new CustomEvent("speed-code-detected",{detail:e})),this.logger.debug("speed code detection event dispatched on Player",e)),this.logger.debug("speed code detection event dispatched",e)}}function Aa(e,t){if(!e)return null;var r=Math.round(255*t).toString(16).padStart(2,"0");if(e.startsWith("#"))return"#"+((i=e.replace("#","").replace(/[^0-9A-Fa-f]/g,"")).length<=4?i.slice(0,3).split("").map(e=>e+e).join(""):i.slice(0,6)).padEnd(6,"0")+r;if(e.startsWith("hsl")){var i=e.match(/hsl\(([^)]+)\)/);if(i)return`hsla(${i[1]} / ${t})`}if(e.startsWith("rgb")){var s,r=e.match(/\d+/g);if(r&&3<=r.length)return[i,r,s]=r,`rgba(${i}, ${r}, ${s}, ${t})`}return e}du.controllerName="SpeedDetectorController";class cu extends Ks{init(){}styles(){var e;this.player.style.setProperty("--fakebar-background-color",null==(e=null==(e=this.player.config)?void 0:e.fakeBar)?void 0:e.color),this.player.style.setProperty("--fakebar-height",`${null!=(e=null==(e=this.player.config)?void 0:e.fakeBar)&&e.active?null==(e=null==(e=this.player.config)?void 0:e.fakeBar)?void 0:e.height:0}px`),this.player.style.setProperty("--resume-background-color",null==(e=null==(e=this.player.config)?void 0:e.resume)?void 0:e.backgroundColor),this.player.style.setProperty("--resume-foreground-color",null==(e=null==(e=this.player.config)?void 0:e.resume)?void 0:e.foregroundColor),this.player.style.setProperty("--style-background",null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.background),this.player.style.setProperty("--style-background-100",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.background,1)),this.player.style.setProperty("--style-background-90",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.background,.9)),this.player.style.setProperty("--style-background-80",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.background,.8)),this.player.style.setProperty("--style-background-70",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.background,.7)),this.player.style.setProperty("--style-background-60",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.background,.6)),this.player.style.setProperty("--style-background-50",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.background,.5)),this.player.style.setProperty("--style-background-opacity","var(--style-background-80)"),this.player.style.setProperty("--style-foreground",null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.foreground),this.player.style.setProperty("--style-foreground-100",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.foreground,1)),this.player.style.setProperty("--style-foreground-90",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.foreground,.9)),this.player.style.setProperty("--style-foreground-80",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.foreground,.8)),this.player.style.setProperty("--style-foreground-70",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.foreground,.7)),this.player.style.setProperty("--style-foreground-60",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.foreground,.6)),this.player.style.setProperty("--style-foreground-50",Aa(null==(e=null==(e=this.player.config)?void 0:e.style)?void 0:e.foreground,.5)),this.player.style.setProperty("--style-foreground-opacity","var(--style-foreground-80)")}}let G={accountId:"",cache:{hashingMethod:"md5",maxAge:36e5,namespace:"cacheHermes",storage:void 0},debug:!(cu.controllerName="StyleController"),dryRun:!1,fetch:{base:"https://a.vturb.net/",beacon:"y",fetch:"x",gif:"g"},queue:{capacity:5e3,interval:5},retry:{fallbackToBeacon:!0,initialDelay:100,limit:3,retryOnResponseStatuses:[400,404,408,500,502,503,504]},unique:!0},z=function(){var e;if("undefined"==typeof window||!window.screen)return{};var t=["height","width","colorDepth","pixelDepth","availHeight","availWidth"],r={};for(let e=0;e ")};function La(e,t){return e[t]||(e.hasAttribute&&e.hasAttribute(t)?e.getAttribute(t):e.parentNode?La(e.parentNode,t):null)}function ka(){var e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}let Y=["utm_source","utm_medium","utm_campaign","utm_term","utm_content","src","sck"],Q={browserProfile:function(){return{codeName:navigator.appCodeName,cookies:void 0!==navigator.cookieEnabled&&navigator.cookieEnabled,description:(()=>{let e,t;return document&&"function"==typeof document.querySelector&&(t=document.querySelector('meta[name="description"]')),null!=(e=null==t?void 0:t.getAttribute("content"))?e:""})(),doNotTrack:navigator.doNotTrack,language:navigator.language,name:navigator.appName,online:navigator.onLine,platform:navigator.platform,screen:z(),useragent:navigator.userAgent,version:navigator.appVersion,window:wa(window,document)}},datetimeIndex:function(e){return{day_of_month:(e=e||new Date).getDate(),day_of_week:e.getDay()+1,hour_of_day:e.getHours(),month:e.getMonth()+1,year:e.getFullYear()}},domainName:function(e){let t=(e=>{let t;return t=(t=(t=-1{try{let t=new URLSearchParams(new URL(e).search);return Object.fromEntries(Y.filter(e=>t.has(e)).map(e=>[e,t.get(e)]))}catch(e){return{}}},screenProfile:z,scrollState:function(e={}){return e=Object.assign({pixel:0,pixel_max:0,ratio:null,ratio_max:null},"object"==typeof e?e:{}),"undefined"==typeof window&&"undefined"==typeof document||(e.pixel=(void 0!==window.pageYOffset?window.pageYOffset:(document.documentElement||document.body.parentNode||document.body).scrollTop)+(window.innerHeight||document.documentElement.clientHeight),e.pixel>e.pixel_max&&(e.pixel_max=e.pixel),e.ratio=parseFloat(Number(e.pixel/ka()).toFixed(2)),e.ratio_max=parseFloat(Number(e.pixel_max/ka()).toFixed(2))),e},uniqueId:Ts,windowProfile:wa};class uu{constructor(e){this.level=e}debug(e){15==(15&this.level)&&console.debug(e)}error(e){1==(1&this.level)&&console.error(e)}info(e){7==(7&this.level)&&console.log(e)}warn(e){3==(3&this.level)&&console.warn(e)}}var Es=vs(2385),Es=vs.n(Es),Ss=vs(7744),Ss=vs.n(Ss),As=vs(4839),Ra=vs.n(As),As=vs(5712),As=vs.n(As),ws=vs(3495),ws=vs.n(ws),Ls=vs(863),Ls=vs.n(Ls);let Z=[ws(),As(),Ls()],J=[Es(),Ss()],ee=(e,r)=>{let i=Ra().createStore(Z,J,e);return{get(e,t){i.removeExpiredKeys();e=i.get(e,t);return null==e?null:e},instance:i,set(e,t){return i.set(e,t,Date.now()+r),t}}};var ws=(n={domListeners:{}})=>{n.domListeners=n.domListeners||{};class t{constructor(e){this.doc=document,this.win=window,this.selector=e}off(r,i){if(2===arguments.length&&r){let t=[];n.domListeners[r][this.selector].forEach(e=>{e!==i&&e.fn!==i&&t.push(e)}),n.domListeners[r][this.selector]=t}else if(1===arguments.length&&r)try{delete n.domListeners[r][this.selector]}catch(e){n.domListeners[r][this.selector]=[]}else Object.keys(n.domListeners).forEach(t=>{try{delete n.domListeners[t][this.selector]}catch(e){n.domListeners[t][this.selector]=[]}});return this}on(e,t){var r,i,s,a,h,d;return 2===arguments.length&&"string"==typeof e&&"function"==typeof t&&(void 0===n.domListeners[e]&&(r=this.doc,i=e,a=this.doc,h=this.win,d=e,s=e=>{let o=e||h.event,l=o.target||o.srcElement;void 0!==n.domListeners[d]&&Object.entries(n.domListeners[d]).forEach(([e,t])=>{((e,t,r)=>{let i=t.parentNode||e,s=i.querySelectorAll(r),a=s.length;for(;a--;)if(s[a]===t)return 1})(a,l,e)?t.forEach(e=>{if("click"===d&&"A"===l.nodeName){var t=h,r=o,i=l,s=e,a=i.getAttribute("target");if("boolean"==typeof(s=s(r))&&!1===s||r.defaultPrevented)r.preventDefault(),r.returnValue=!1;else if("_blank"!==a&&"blank"!==a&&!r.metaKey&&!i.hasAttribute("download")&&(r.preventDefault(),r.returnValue=!1,i.href)&&"#"!==i.href&&i.href!==t.location+"#")if(void 0!==s){if("sendBeacon"in navigator)return void(t.location.href=i.href);s instanceof Promise&&s.then(()=>{t.location.href=i.href}).catch(()=>{t.location.href=i.href})}else setTimeout(()=>{t.location.href=i.href},500)}else if("submit"===d&&"FORM"===l.nodeName){var a=o,n=l,r=e;if("boolean"==typeof(r=r(a))&&!1===r||a.defaultPrevented||!1===a.returnValue)a.preventDefault(),a.returnValue=!1;else if(a.preventDefault(),a.returnValue=!1,void 0!==r){if("sendBeacon"in navigator)return void n.submit();r instanceof Promise&&r.then(()=>{n.submit()}).catch(()=>{n.submit()})}else setTimeout(()=>{n.submit()},500)}else e(o)}):"window"===e&&t.forEach(e=>{e(o)})})},r.addEventListener?r.addEventListener(i,s,!1):(r.attachEvent||(()=>{console.error("Keen: Unable to attach event listener.")})).call(r,"on"+i,s),n.domListeners[e]={}),n.domListeners[e][this.selector]=n.domListeners[e][this.selector]||[],n.domListeners[e][this.selector].push(t)),this}once(t,r){let i=(...e)=>(this.off(t,i),r.apply(this,e));return i.fn=r,this.on(t,i),this}}return e=>{if(e)return new t(e);throw new Error("Selector is required")}},As=vs(5978),Ia=vs.n(As),Ls=vs(3627),Es=vs.n(Ls);class fu extends Es(){constructor(e={}){var t,r,i;super(),this.delayedFlush=(t=50,r=()=>this.flush(),i=(i||{}).atBegin,_a(t,r,{debounceMode:!1!==(void 0!==i&&i)})),this.length=0,this.config=Object.assign(Object.assign({},G.queue),e),this.events={},this.interval=0,this.timer=null}add(e){return this.length++,this.events[e.id]=e,this.emit("add",e),this.check(),this}check(){return this.shouldFlushQueue()?this.delayedFlush():this.checkOverQueueCapacity()&&this.flush(),this}checkOverQueueCapacity(){return this.length>=this.config.capacity}flush(){var e=Object.values(this.events);return 0!==(e=this.filterTimedEvents(e)).length&&(this.length=0,this.interval=0,this.events={},this.emit("flush",e)),this}pause(){return"number"==typeof this.timer&&(clearInterval(this.timer),this.timer=null),this}start(){return this.pause(),this.timer=setInterval(()=>{this.interval+=100,this.check()},100),this}filterTimedEvents(t){let r=null,i=[];try{return t.forEach(e=>{"timed"===e.event?(!r||e.data.time>r.data.time)&&(r=e):i.push(e)}),r&&i.push(r),i}catch(e){return console.error(e),t}}shouldFlushQueue(){return 0=this.config.interval}}let te=fu,re=/^(?:submit|button|image|reset|file)$/i,ie=/^(?:input|select|textarea|keygen)/i,se=/(\[[^[\]]*])/g;function Ca(e,t,r){var i;return t.match(se)?function e(t,r,i){var s,a;return 0===r.length?i:(a=null==(s=r.shift())?void 0:s.match(/^\[(.+?)]$/),"[]"===s?(t=t||[],(Array.isArray(t)?t:(t._values=t._values||[],t._values)).push(e(null,r,i))):!a&&s?t[s]=e(t[s],r,i):a&&a[1]&&(a=+(s=a[1]),isNaN(a)?(t=t||{})[s]=e(t[s],r,i):(t=t||[])[a]=e(t[a],r,i)),t)}(e,(e=>{let t=[],r=new RegExp(se),i=/^([^[\]]*)/.exec(e);for(i&&i[1]&&t.push(i[1]);null!==(i=r.exec(e));)t.push(i[1]);return t})(t),r):(i=e[t])?(Array.isArray(i)||(e[t]=[i]),e[t].push(r)):e[t]=r,e}function Pa(e,t,r){return r=r.replace(/(\r)?\n/g,"\r\n"),r=(r=encodeURIComponent(r)).replace(/%20/g,"+"),e+(e?"&":"")+encodeURIComponent(t)+"="+r}function Da(e,r){"object"!=typeof r?r={hash:!!r}:void 0===r.hash&&(r.hash=!0);let i=r.hash?{}:"";var s=r.serializer||(r.hash?Ca:Pa),t=e&&e.elements?e.elements:[],a=Object.create(null);for(let e=0;e{e=e.cache,e=e.hashingMethod,t=JSON.stringify(t);return e&&"md5"===e.toLowerCase()?Ia()(t):t},oe=(Ss=(e,t)=>{var r,e=Object.assign(Object.assign({},G),e);return!1===e.unique||(r=e.cache,t=JSON.stringify(t),e=ne(e,t),t={expiryTime:r.maxAge?Date.now()+r.maxAge:void 0,hash:e},r.storage?((e,t)=>{if(t){const r=t.get(e.hash,false);if(r)if(r.expiryTime&&r.expiryTime>Date.now())return Promise.resolve(false);t.set(e.hash,e)}return Promise.resolve(true)})(t,r.storage):(t=>{if(t.expiryTime){const r=Date.now();ae=ae.filter(e=>{var t;return(t=e.expiryTime)!==null&&t!==void 0?t:0>r})}const e=ae.find(e=>t.hash===e.hash);if(e)if(e.expiryTime&&e.expiryTimet.hash!==e.hash);else return Promise.resolve(false);return ae.push(t),Promise.resolve(true)})(t))},{BrowserStorage:ys,ListenerCore:ws,MD5:Ia(),Queue:te,SerializeForm:Da,Timer:class{constructor(e){this.count=e||0}clear(){return this.count=0,this}pause(){return clearInterval(this.interval),this}start(){return this.pause(),this.interval=setInterval(()=>{this.count++},1e3),this}value(){return this.count}},Unique:Ss});var xa,Oa,ks="undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||void 0!==vs.g&&vs.g||{},Ma="URLSearchParams"in ks,Fa="Symbol"in ks&&"iterator"in Symbol,Na="FileReader"in ks&&"Blob"in ks&&(()=>{try{return new Blob,!0}catch(e){return!1}})(),Ua="FormData"in ks,Ba="ArrayBuffer"in ks;function $a(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"');return e.toLowerCase()}function Va(e){return e="string"!=typeof e?String(e):e}function Ga(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return Fa&&(e[Symbol.iterator]=function(){return e}),e}function Rs(t){this.map={},t instanceof Rs?t.forEach(function(e,t){this.append(t,e)},this):Array.isArray(t)?t.forEach(function(e){if(2!=e.length)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length);this.append(e[0],e[1])},this):t&&Object.getOwnPropertyNames(t).forEach(function(e){this.append(e,t[e])},this)}function Ha(e){if(!e._noBody)return e.bodyUsed?Promise.reject(new TypeError("Already read")):void(e.bodyUsed=!0)}function ja(r){return new Promise(function(e,t){r.onload=function(){e(r.result)},r.onerror=function(){t(r.error)}})}function za(e){var t=new FileReader,r=ja(t);return t.readAsArrayBuffer(e),r}function Ka(e){var t;return e.slice?e.slice(0):((t=new Uint8Array(e.byteLength)).set(new Uint8Array(e)),t.buffer)}function Ya(){return this.bodyUsed=!1,this._initBody=function(e){var t;this.bodyUsed=this.bodyUsed,(this._bodyInit=e)?"string"==typeof e?this._bodyText=e:Na&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:Ua&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:Ma&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():Ba&&Na&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=Ka(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):Ba&&(ArrayBuffer.prototype.isPrototypeOf(e)||Oa(e))?this._bodyArrayBuffer=Ka(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):Ma&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},Na&&(this.blob=function(){var e=Ha(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer)return Ha(this)||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer));if(Na)return this.blob().then(za);throw new Error("could not read as ArrayBuffer")},this.text=function(){var e,t,r,i=Ha(this);if(i)return i;if(this._bodyBlob)return i=this._bodyBlob,e=new FileReader,t=ja(e),r=(r=/charset=([A-Za-z0-9_-]+)/.exec(i.type))?r[1]:"utf-8",e.readAsText(i,r),t;if(this._bodyArrayBuffer)return Promise.resolve((e=>{for(var t=new Uint8Array(e),r=new Array(t.length),i=0;i{if("AbortController"in ks)return(new AbortController).signal})(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i),"GET"!==this.method&&"HEAD"!==this.method||"no-store"!==t.cache&&"no-cache"!==t.cache||((r=/([?&])_=[^&]*/).test(this.url)?this.url=this.url.replace(r,"$1_="+(new Date).getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime())}function Xa(e){var r=new FormData;return e.trim().split("&").forEach(function(e){var t;e&&(t=(e=e.split("=")).shift().replace(/\+/g," "),e=e.join("=").replace(/\+/g," "),r.append(decodeURIComponent(t),decodeURIComponent(e)))}),r}function Qa(e,t){if(!(this instanceof Qa))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(t=t||{},this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||599{try{return""===t&&ks.location.href?ks.location.href:t}catch(e){return t}})(a.url),!0),"include"===a.credentials?n.withCredentials=!0:"omit"===a.credentials&&(n.withCredentials=!1),"responseType"in n&&(Na?n.responseType="blob":Ba&&(n.responseType="arraybuffer")),o&&"object"==typeof o.headers&&!(o.headers instanceof Rs||ks.Headers&&o.headers instanceof ks.Headers)?(r=[],Object.getOwnPropertyNames(o.headers).forEach(function(e){r.push($a(e)),n.setRequestHeader(e,Va(o.headers[e]))}),a.headers.forEach(function(e,t){-1===r.indexOf(t)&&n.setRequestHeader(t,e)})):a.headers.forEach(function(e,t){n.setRequestHeader(t,e)}),a.signal&&(a.signal.addEventListener("abort",t),n.onreadystatechange=function(){4===n.readyState&&a.signal.removeEventListener("abort",t)}),n.send(void 0===a._bodyInit?null:a._bodyInit)})}en.polyfill=!0,ks.fetch||(ks.fetch=en,ks.Headers=Rs,ks.Request=qa,ks.Response=Qa);let le={REQUEST_ABORTED:"REQUEST_ABORTED",REQUEST_FALLBACK:"REQUEST_FALLBACK"};var tn=function(e,n,o,l){return new(o=o||Promise)(function(r,t){function i(e){try{a(l.next(e))}catch(e){t(e)}}function s(e){try{a(l.throw(e))}catch(e){t(e)}}function a(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,s)}a((l=l.apply(e,n||[])).next())})};class pu{constructor(e){this.isReady=!1,this.version="3.0.1",this.config=Object.assign(Object.assign({},G),e),this.browserProfile=Q.browserProfile(),this.queue=new te(this.config.queue),this.listeners=oe.ListenerCore,this.sessionStore=ee("hermes-session",108e5),this.sessionId=this.loadSessionId(),this.deviceStore=ee("hermes-device",31536e6),this.deviceId=this.loadDeviceId(),this.logger=new uu(this.config.debug?15:3),this.browserStore=ee("browser-info",6048e5),this.queue_started=!1}event(r,i,s){return tn(this,void 0,void 0,function*(){var e={accountId:this.config.accountId,createdAt:null,data:i||{},device:this.deviceId,event:r,id:null,metadata:Object.assign(Object.assign({},this.metadata),this.customMetadata),sessionId:this.sessionId},t=(e.id=ne(this.config,e),yield oe.Unique(this.config,e));return e.createdAt=Date.now(),t&&(this.config.dryRun?this.logger.debug("[dryRun] "+JSON.stringify(e)):this.queue.add(e)),s&&this.queue.flush(),this})}getUriWithTrafficParams(e){return this.browserStore.get("uri_with_traffic_params",e)||void 0}saveUriWithTrafficParams(e){e&&(e=>{try{let t=new URLSearchParams(new URL(e).search),r=!1;return Y.forEach(e=>{t.has(e)&&(r=!0)}),r}catch(e){return!1}})(e)&&this.browserStore.set("uri_with_traffic_params",e)}setup(e){this.uri=e.uri||window.location.href,this.saveUriWithTrafficParams(this.uri),e.uri=this.getUriWithTrafficParams(this.uri),this.customMetadata=e,this.isReady=!0}start(){return this.logger.debug("Starting Hermes v"+this.version),this.setupSystemMetadata(),this.configureEvents(),this.queue.start(),this}useStore(e){return this.config.cache.storage=ee(e,this.config.cache.maxAge),this}flush(t){return tn(this,void 0,void 0,function*(){try{"object"==typeof t&&"length"in t&&0===t.length||(this.logger.info(`Flushing ${t.length} events`),yield((o,e,l)=>{var t=Object.assign(Object.assign({},G.retry),l||{});let h=t.limit,d=t.initialDelay,c=t.retryOnResponseStatuses,u=t.fallbackToBeacon,f=t.__mockError||null,p=0,g={Accept:"application/json","Content-Type":"application/json",Origin:window.location.origin},m=JSON.stringify(e);if(c&&!(c instanceof Array))throw{message:"retryOn property expects an array",name:"ArgumentError"};let v;return"undefined"!=typeof AbortController&&(v=new AbortController),(t=new Promise(function(t,e){let r=f?e=>{f(e),t(e)}:t,i=f?e=>{f(e),t(e)}:e,s=function(e){u?(navigator.sendBeacon(""+o.base+o.beacon,m)?r:i)(le.REQUEST_FALLBACK):i(e)},a=function(t){var e=Object.assign(Object.assign({},l),{body:m,credentials:"same-origin",headers:g,method:"POST",mode:"cors",signal:null==v?void 0:v.signal});fetch(""+o.base+o.fetch,e).then(function(e){-1===c.indexOf(e.status)?r(e):0{null!=v&&v.abort()},t})(this.config.fetch,t,this.config.retry))}catch(e){this.logger.error(e),t.forEach(e=>{this.queue.add(e)})}})}loadDeviceId(){try{var e=this.deviceStore.get("hermes_device_id",Ts());return this.deviceStore.set("hermes_device_id",e),e}catch(e){return this.logger.error(e),Ts()}}loadSessionId(){try{var e=this.sessionStore.get("hermes_session_id",Ts());return this.sessionStore.set("hermes_session_id",e),e}catch(e){return this.logger.error(e),Ts()}}setupSystemMetadata(){var e=this.getUriWithTrafficParams(this.uri);this.metadata={event_version:this.version,traffic_origin_params:Q.getTrafficOriginParams(e),uri:e}}configureEvents(){this.queue_started||(this.queue.on("flush",this.flush.bind(this)),this.queue_started=!0),window.addEventListener("beforeunload",()=>{this.logger.debug("beforeunload"),this.queue.flush()})}}let he=pu,de=e=>/^(http:\/\/)?(www\.)?localhost:[0-9]{1,}(.*)$/gi.test(e.trim()),ce=e=>/^(https?:\/\/)?(www\.)?[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}(:[0-9]+)?(.*)$/gi.test(e.trim()),ue=({search:e,logger:t})=>{try{if(!e.match(/[?&]vl=/))return null;t.debug("Parsing location vl param");var r=new URLSearchParams(e).get("vl");return r&&(i=decodeURIComponent(r),/^(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,}\.[a-z]{2,}\b(.*)$/gi.test(i.trim())||de(i.trim())||ce(i.trim()))?new URL(decodeURIComponent(r)):null}catch(e){return t.error("Error parsing location vl param",e),null}var i};class gu{constructor(e,t,r){this.analytics=e,this.window=t,this.logger=r,this.elements=[],this.clickHandler=this.clickHandler.bind(this),this.window.addEventListener("click",this.clickHandler)}clickHandler(e){try{var t=e.target,t=this.findClickableParent(t);this.shouldHandleClickEvent(t)&&this.handleClickEvent(t,this.clickHandler)}catch(e){this.logger.error("Click: Error handling click event",e)}}findClickableParent(e){try{for(;e;){if(["A","BUTTON","INPUT"].includes(e.tagName))return e;e=e.parentElement}return null}catch(e){return this.logger.error("Click: Error finding clickable parent",e),null}}getElements(){return[...this.elements]}handleClickEvent(e,t){var r,i,s;"A"===e.tagName?(r=e.getAttribute("href"),i=this.window.location.href.split("#")[0],s=null==r?void 0:r.split("#")[0],!r||s===i||r.startsWith("#")||r.startsWith("javascript:")||this.handleRegisterClickEvent(t)):("BUTTON"===e.tagName||"INPUT"===e.tagName&&"submit"===e.type&&(s=e.form)&&s.action)&&this.handleRegisterClickEvent(t)}handleRegisterClickEvent(e){this.analytics.onPlayerExitClick(),this.window.removeEventListener("click",e)}matches(e,t){var r=Element.prototype;return(r.matches||r.webkitMatchesSelector||r.mozMatchesSelector||r.msMatchesSelector||function(e){var t=(this.document||this.ownerDocument).querySelectorAll(e);let r=t.length;for(;0<=--r&&t.item(r)!==this;);return-1{var e,t,r;if(!this.alreadySetup){this.alreadySetup=!0,this.logger.trace("Setting up Hermes");try{this.player.analytics=new he({accountId:this.config.oid,debug:"debug"===qc.level||"trace"===qc.level||this.config.preview,dryRun:this.config.preview,fetch:{base:"https://vt-h-1.b-cdn.net",beacon:"/y",fetch:"/x",gif:"/gif"},queue:{capacity:1e3,interval:10},retry:{fallbackToBeacon:!1,initialDelay:200,limit:5,retryOnResponseStatuses:[400,404,408,500,502,503,504]},unique:!1});var i=ue({logger:this.logger,search:window.location.search})||new URL(window.location.href);null!=(e=this.player.analytics)&&e.setup({domain:i.hostname,media_id:this.config.video.id,media_type:"video",path:i.pathname,player_id:this.config.id,player_version:"4.2.0.4",uri:i.toString()}),this.logger.trace("Starting Hermes"),null!=(t=this.player.analytics)&&t.start();try{null!=(r=this.player.logger)&&r.traceId&&this.event("trace_id",{trace_id:this.player.logger.traceId},!1)}catch(e){this.logger.error("Error sending trace_id",e)}this.event("pageview",null,!0),this.player.dispatchEvent(new CustomEvent(bs.ANALYTICS_STARTED))}catch(e){this.logger.error("Error setting up Hermes",e)}}},this.onBeforeUnload=()=>{this.logger.trace("Before unload"),0{var e;null!=(e=this.player.analytics)&&e.isReady?(e=Math.ceil(null!=(e=null==(e=this.player.video)?void 0:e.currentTime)?e:0),this.player.analytics.event("clicked",{time:e},!0)):this.logger.error("Player exit click event sent before analytics is ready")},this.onPreloadExpired=()=>{this.logger.trace("Preload expired"),this.customEvent("preload_expired",null)},this.onVideoEnded=e=>rn(this,void 0,void 0,function*(){this.logger.trace("Video ended"),this.timed(!1),this.event("finished",null,!0),this.player.removeEventListener(bs.VIDEO_ENDED,this.onVideoEnded)}),this.onVideoPause=e=>rn(this,void 0,void 0,function*(){this.logger.trace("Video pause");var e,t=Math.round(null!=(t=null==(t=this.player.video)?void 0:t.currentTime)?t:0);t<=(null!=(e=null==(e=this.player.video)?void 0:e.duration)?e:0)-1&&this.event("paused",{time:t},!0)}),this.onVideoPlay=()=>rn(this,void 0,void 0,function*(){this.logger.trace("Video play"),this.event("played",null,!1),this.timed(!0),this.player.removeEventListener(bs.VIDEO_PLAY,this.onVideoPlay)}),this.onVideoTimeUpdate=e=>{4{let r=this.eventQueue.length-1;this.eventQueue.forEach((e,t)=>this.event(e.type,e.detail,t===r)),this.eventQueue=[]},{once:!0}),this.player.addEventListener(bs.VIDEO_ENDED,this.onVideoEnded,{once:!0}),this.player.addEventListener(bs.VIDEO_PAUSE,this.onVideoPause),this.player.addEventListener(bs.VIDEO_PLAY,this.onVideoPlay,{once:!0}),this.player.addEventListener(bs.VIDEO_TIMEUPDATE,this.onVideoTimeUpdate),this.player.addEventListener(bs.PLAYER_READY,this.handlePlayerReady,{once:!0}),this.player.addEventListener(bs.PLAYER_EXIT_CLICK,this.onPlayerExitClick,{once:!0}),null!=(e=this.player.interface)&&e.addEventListener(bs.PRELOAD_EXPIRED,this.onPreloadExpired,{once:!0}),window.addEventListener("beforeunload",this.onBeforeUnload)}catch(e){this.logger.error("Error initializing analytics",e)}}metric(e,t){this.logger.debug(e+" Tracking",t),this.event("metric",{name:e,value:t},!1)}timed(){return rn(this,arguments,void 0,function*(e=!1){var t,r,i;try{this.player.controllers.blockers.anyBlocker("played")&&(i=Math.round(null!=(r=null==(t=this.player.video)?void 0:t.currentTime)?r:0),(i-=i%this.timeControlDelay){e=1===i.length?i[0]:e.reduce((e,t,r)=>e+(()=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})()+i[r+1],i[0]);return new vu(e,i,ge)},ve=pe?e=>e:t=>{if(!(t instanceof CSSStyleSheet))return t;{let e="";for(var r of t.cssRules)e+=r.cssText;return t=e,new vu("string"==typeof t?t:t+"",void 0,ge)}},ye,be=window,Ee=be.trustedTypes,Te=Ee?Ee.emptyScript:"",_e=be.reactiveElementPolyfillSupport,Se={toAttribute(e,t){switch(t){case Boolean:e=e?Te:null;break;case Object:case Array:e=null==e?e:JSON.stringify(e)}return e},fromAttribute(e,t){let r=e;switch(t){case Boolean:r=null!==e;break;case Number:r=null===e?null:Number(e);break;case Object:case Array:try{r=JSON.parse(e)}catch(e){r=null}}return r}},Ae=(e,t)=>t!==e&&(t==t||e==e),we={attribute:!0,type:String,converter:Se,reflect:!1,hasChanged:Ae},Le="finalized";class yu extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this._$Eu()}static addInitializer(e){var t;this.finalize(),(null!=(t=this.h)?t:this.h=[]).push(e)}static get observedAttributes(){this.finalize();let r=[];return this.elementProperties.forEach((e,t)=>{e=this._$Ep(t,e);void 0!==e&&(this._$Ev.set(e,t),r.push(e))}),r}static createProperty(e,t=we){var r;t.state&&(t.attribute=!1),this.finalize(),this.elementProperties.set(e,t),t.noAccessor||this.prototype.hasOwnProperty(e)||(r="symbol"==typeof e?Symbol():"__"+e,void 0!==(r=this.getPropertyDescriptor(e,r,t))&&Object.defineProperty(this.prototype,e,r))}static getPropertyDescriptor(r,i,s){return{get(){return this[i]},set(e){var t=this[r];this[i]=e,this.requestUpdate(r,t,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)||we}static finalize(){if(this.hasOwnProperty(Le))return!1;this[Le]=!0;let e=Object.getPrototypeOf(this);if(e.finalize(),void 0!==e.h&&(this.h=[...e.h]),this.elementProperties=new Map(e.elementProperties),this._$Ev=new Map,this.hasOwnProperty("properties")){let e=this.properties,t=[...Object.getOwnPropertyNames(e),...Object.getOwnPropertySymbols(e)];for(var r of t)this.createProperty(r,e[r])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(e){var t=[];if(Array.isArray(e)){var r=new Set(e.flat(1/0).reverse());for(let e of r)t.unshift(ve(e))}else void 0!==e&&t.push(ve(e));return t}static _$Ep(e,t){t=t.attribute;return!1===t?void 0:"string"==typeof t?t:"string"==typeof e?e.toLowerCase():void 0}_$Eu(){var e;this._$E_=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null!=(e=this.constructor.h)&&e.forEach(e=>e(this))}addController(e){var t;(null!=(t=this._$ES)?t:this._$ES=[]).push(e),void 0!==this.renderRoot&&this.isConnected&&null!=(t=e.hostConnected)&&t.call(e)}removeController(e){var t;null!=(t=this._$ES)&&t.splice(this._$ES.indexOf(e)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach((e,t)=>{this.hasOwnProperty(t)&&(this._$Ei.set(t,this[t]),delete this[t])})}createRenderRoot(){var i,e,t=null!=(t=this.shadowRoot)?t:this.attachShadow(this.constructor.shadowRootOptions);return i=t,e=this.constructor.elementStyles,pe?i.adoptedStyleSheets=e.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet):e.forEach(e=>{var t=document.createElement("style"),r=fe.litNonce;void 0!==r&&t.setAttribute("nonce",r),t.textContent=e.cssText,i.appendChild(t)}),t}connectedCallback(){var e;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null!=(e=this._$ES)&&e.forEach(e=>{var t;return null==(t=e.hostConnected)?void 0:t.call(e)})}enableUpdating(e){}disconnectedCallback(){var e;null!=(e=this._$ES)&&e.forEach(e=>{var t;return null==(t=e.hostDisconnected)?void 0:t.call(e)})}attributeChangedCallback(e,t,r){this._$AK(e,r)}_$EO(e,t,r=we){var i,s=this.constructor._$Ep(e,r);void 0!==s&&!0===r.reflect&&(i=(void 0!==(null==(i=r.converter)?void 0:i.toAttribute)?r.converter:Se).toAttribute(t,r.type),this._$El=e,null==i?this.removeAttribute(s):this.setAttribute(s,i),this._$El=null)}_$AK(e,r){var i=this.constructor,s=i._$Ev.get(e);if(void 0!==s&&this._$El!==s){let e=i.getPropertyOptions(s),t="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==(null==(i=e.converter)?void 0:i.fromAttribute)?e.converter:Se;this._$El=s,this[s]=t.fromAttribute(r,e.type),this._$El=null}}requestUpdate(e,t,r){let i=!0;void 0!==e&&(((r=r||this.constructor.getPropertyOptions(e)).hasChanged||Ae)(this[e],t)?(this._$AL.has(e)||this._$AL.set(e,t),!0===r.reflect&&this._$El!==e&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(e,r))):i=!1),!this.isUpdatePending&&i&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(e){Promise.reject(e)}var e=this.scheduleUpdate();return null!=e&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(this.isUpdatePending){this.hasUpdated,this._$Ei&&(this._$Ei.forEach((e,t)=>this[t]=e),this._$Ei=void 0);let e=!1;var r=this._$AL;try{(e=this.shouldUpdate(r))?(this.willUpdate(r),null!=(t=this._$ES)&&t.forEach(e=>{var t;return null==(t=e.hostUpdate)?void 0:t.call(e)}),this.update(r)):this._$Ek()}catch(t){throw e=!1,this._$Ek(),t}e&&this._$AE(r)}}willUpdate(e){}_$AE(e){var t;null!=(t=this._$ES)&&t.forEach(e=>{var t;return null==(t=e.hostUpdated)?void 0:t.call(e)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(e){return!0}update(e){void 0!==this._$EC&&(this._$EC.forEach((e,t)=>this._$EO(t,this[t],e)),this._$EC=void 0),this._$Ek()}updated(e){}firstUpdated(e){}}yu[Le]=!0,yu.elementProperties=new Map,yu.elementStyles=[],yu.shadowRootOptions={mode:"open"},null!=_e&&_e({ReactiveElement:yu}),(null!=(ye=be.reactiveElementVersions)?ye:be.reactiveElementVersions=[]).push("1.6.3");let ke=window,Re=ke.trustedTypes,Ie=Re?Re.createPolicy("lit-html",{createHTML:e=>e}):void 0,Ce="$lit$",u=`lit$${(Math.random()+"").slice(9)}$`,Pe="?"+u,De=`<${Pe}>`,xe=document,Oe=()=>xe.createComment(""),Me=e=>null===e||"object"!=typeof e&&"function"!=typeof e,Fe=Array.isArray,Ne=e=>Fe(e)||"function"==typeof(null==e?void 0:e[Symbol.iterator]),Ue="[ \t\n\f\r]",Be=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,$e=/-->/g,Ve=/>/g,Ge=RegExp(`>|${Ue}(?:([^\\s"'>=/]+)(${Ue}*=${Ue}*(?:[^ \r"'\`<>=]|("|')|))|$)`,"g"),He=/'/g,je=/"/g,ze=/^(?:script|style|textarea|title)$/i,Ke=r=>(e,...t)=>({_$litType$:r,strings:e,values:t}),c=Ke(1),y=(Ke(2),Symbol.for("lit-noChange")),l=Symbol.for("lit-nothing"),Ye=new WeakMap,We=xe.createTreeWalker(xe,129,null,!1);function an(e,t){if(Array.isArray(e)&&e.hasOwnProperty("raw"))return void 0!==Ie?Ie.createHTML(t):t;throw Error("invalid template strings array")}let qe=(n,e)=>{let t=n.length-1,o=[],l,h=2===e?"":"",d=Be;for(let a=0;a"===r[0]?(d=null!=l?l:Be,i=-1):void 0===r[1]?i=-2:(i=d.lastIndex-r[2].length,t=r[1],d=void 0===r[3]?Ge:'"'===r[3]?je:He):d===je||d===He?d=Ge:d===$e||d===Ve?d=Be:(d=Ge,l=void 0);var c=d===Ge&&n[a+1].startsWith("/>")?" ":"";h+=d===Be?e+De:0<=i?(o.push(t),e.slice(0,i)+Ce+e.slice(i)+u+c):e+u+(-2===i?(o.push(void 0),a):c)}return[an(n,h+(n[t]||"")+(2===e?"":"")),o]};class bu{constructor({strings:e,_$litType$:t},r){var i;this.parts=[];let s=0,a=0;var n=e.length-1,o=this.parts,[e,l]=qe(e,t);if(this.el=bu.createElement(e,r),We.currentNode=this.el.content,2===t){let e=this.el.content,t=e.firstChild;t.remove(),e.append(...t.childNodes)}for(;null!==(i=We.nextNode())&&o.length{var i,s=null!=(s=null==r?void 0:r.renderBefore)?s:t;let a=s._$litPart$;if(void 0===a){let e=null!=(i=null==r?void 0:r.renderBefore)?i:null;s._$litPart$=a=new Tu(t.insertBefore(Oe(),e),e,void 0,null!=r?r:{})}return a._$AI(e),a},Ze,Je;class Ys extends yu{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e,t=super.createRenderRoot();return null==(e=this.renderOptions).renderBefore&&(e.renderBefore=t.firstChild),t}update(e){var t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=Qe(t,this.renderRoot,this.renderOptions)}connectedCallback(){var e;super.connectedCallback(),null!=(e=this._$Do)&&e.setConnected(!0)}disconnectedCallback(){var e;super.disconnectedCallback(),null!=(e=this._$Do)&&e.setConnected(!1)}render(){return y}}function Is(s){return(e,t)=>{return void 0!==t?void e.constructor.createProperty(t,s):(r=s,"method"!==(i=e).kind||!i.descriptor||"value"in i.descriptor?{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:i.key,initializer(){"function"==typeof i.initializer&&(this[i.key]=i.initializer.call(this))},finisher(e){e.createProperty(i.key,r)}}:{...i,finisher(e){e.createProperty(i.key,r)}});var r,i}}function Cs(e){return Is({...e,state:!0})}Ys.finalized=!0,Ys._$litElement$=!0,null!=(Ze=globalThis.litElementHydrateSupport)&&Ze.call(globalThis,{LitElement:Ys}),null!=(ys=globalThis.litElementPolyfillSupport)&&ys({LitElement:Ys}),(null!=(Je=globalThis.litElementVersions)?Je:globalThis.litElementVersions=[]).push("3.3.3"),ws=s=>e=>{var t,r,i;return"function"!=typeof e?(t=s,{kind:i,elements:r}=e,{kind:i,elements:r,finisher(e){customElements.define(t,e)}}):(i=e,customElements.define(s,i),i)};let et=({finisher:s,descriptor:a})=>(r,t)=>{var i;if(void 0===t){let t=null!=(i=r.originalKey)?i:r.key,e=null!=a?{kind:"method",placement:"prototype",key:t,descriptor:a(r.key)}:{...r,key:t};return null!=s&&(e.finisher=function(e){s(e,t)}),e}{let e=r.constructor;void 0!==a&&Object.defineProperty(r,t,a(t)),null!=s&&s(e,t)}};function Ps(i,t){return et({descriptor:e=>{var r={get(){var e;return null!=(e=null==(e=this.renderRoot)?void 0:e.querySelector(i))?e:null},enumerable:!0,configurable:!0};if(t){let t="symbol"==typeof e?Symbol():"__"+e;r.get=function(){var e;return void 0===this[t]&&(this[t]=null!=(e=null==(e=this.renderRoot)?void 0:e.querySelector(i))?e:null),this[t]}}return r}})}function on(t){return et({descriptor:e=>({async get(){var e;return await this.updateComplete,null==(e=this.renderRoot)?void 0:e.querySelector(t)},enumerable:!0,configurable:!0})})}null!=(Ss=window.HTMLSlotElement)&&Ss.prototype.assignedElements,Ls=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{var t=()=>{this.requestUpdate()};this.player.addEventListener(e,t),this._reRenderOn.push({event:e,fn:t})})}disconnectedCallback(){super.disconnectedCallback(),this.logger.debug("disconnectedCallback",{player:this.player}),this._reRenderOn.forEach(({event:e,fn:t})=>{this.player.removeEventListener(e,t)})}}ku.componentName="Base",ku.reRenderOn=[],ku.styles=[],Ls([Is({type:Object})],ku.prototype,"player",void 0);class Ws extends ku{createRenderRoot(){return this}}Ws.componentName="Playerable";class Ru extends ku{}Ru.componentName="PlayerableShadow",Ru.shadowRootOptions={mode:sn()};class Iu{constructor(e,t){var r,i,s;this.clarityParams=e,this.logger=t,this.logger.debug("ClarityAction",{clarityParams:this.clarityParams}),r=window,e=document,i="clarity",t=this.clarityParams.params.id,r[i]=r[i]||function(...e){(r[i].q=r[i].q||[]).push(e)},(s=e.createElement("script")).async=!0,s.src="https://www.clarity.ms/tag/"+t,null!=(t=(e=e.getElementsByTagName("script")[0]).parentNode)&&t.insertBefore(s,e)}}var Es=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3ln(this,void 0,void 0,function*(){this.logger.debug("Fetching async actions",{response:t});var e=yield t.json();return this.logger.debug("Fetching async actions",{data:e,response:t}),{data:e,status:t.status}})).then(({data:e,status:t})=>{200===t?e.actions.forEach(e=>{"clarity"===e.action?new Iu(e,this.logger):this.logger.debug("Invalid action",{action:e})}):this.logger.debug("Invalid response from async actions",{data:e,status:t})}).catch(e=>{this.logger.debug("Error fetching async actions",{error:e})}):this.logger.debug("Missing companyId or playerId in player config",{companyId:e,playerId:t})}render(){return null}shouldUpdate(){return!1}},rt=(tt.componentName="AsyncActions",tt=Es([ws("vturb-async-actions")],tt),c` `,c` `,c` `),it=c``,st=c``,at=c` `,nt=c` `,ot=c` `,lt=c` `,ht=c` `,dt=(c` `,c` `,c` `),ct=c` `,ut=c` `,ft=c` `,pt=c` `,gt=c``,mt=c``,vt=c` `,yt=c` `,bt=c` `,Et={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Tt=t=>(...e)=>({_$litDirective$:t,values:e});class Cu{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,r){this._$Ct=e,this._$AM=t,this._$Ci=r}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}}let _t=Tt(class extends Cu{constructor(e){if(super(e),e.type!==Et.ATTRIBUTE||"class"!==e.name||2<(null==(e=e.strings)?void 0:e.length))throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter(e=>t[e]).join(" ")+" "}update(e,[t]){var r,i,s;if(void 0===this.it){for(var a in this.it=new Set,void 0!==e.strings&&(this.nt=new Set(e.strings.join(" ").split(/\s/).filter(e=>""!==e))),t)!t[a]||null!=(r=this.nt)&&r.has(a)||this.it.add(a);return this.render(t)}let n=e.element.classList;for(s in this.it.forEach(e=>{e in t||(n.remove(e),this.it.delete(e))}),t){let e=!!t[s];e===this.it.has(s)||null!=(i=this.nt)&&i.has(s)||(e?(n.add(s),this.it.add(s)):(n.remove(s),this.it.delete(s)))}return y}});var ys=e`.bezel{position:absolute;left:0;right:0;top:0;bottom:0;color:var(--bezel-color);pointer-events:none;display:var(--bezel-display);transform:translateY(0);transition:transform var(--base-transition)}.show-controls .bezel{transform:translateY(calc(-50% - (var(--control-padding) * 2 + 1.5rem)/ 2))}.bezel__icon{position:absolute;top:50%;left:50%;margin:calc(var(--bezel-icon-size)/-2) 0 0 calc(var(--bezel-icon-size)/-2);height:var(--bezel-icon-size);width:var(--bezel-icon-size);padding:var(--bezel-icon-padding);box-sizing:border-box;background:var(--bezel-background-color);border-radius:var(--bezel-border-radius);opacity:0;pointer-events:none;fill:var(--bezel-icon-fill)}.bezel__icon svg{width:100%;height:100%}.bezel__icon.bezel-transition{animation:bezel-hide var(--bezel-animation-duration) var(--bezel-animation-timing)}@keyframes bezel-hide{from{opacity:var(--bezel-opacity-start);transform:scale(var(--bezel-scale-start))}to{opacity:var(--bezel-opacity-end);transform:scale(var(--bezel-scale-end))}}.bezel__loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:var(--bezel-loading-min-width);width:var(--bezel-loading-width);max-width:var(--bezel-loading-max-width)}.bezel__loading--hidden{display:none}.bezel__loading svg{width:100%;height:100%}`,Ss=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3hn(this,void 0,void 0,function*(){this.logger.debug("animateBezel"),(yield this.iconElement).classList.add("bezel-transition")}),this.onAnimationEnd=()=>hn(this,void 0,void 0,function*(){this.logger.debug("onAnimationEnd"),(yield this.iconElement).classList.remove("bezel-transition")}),this.onForward=()=>{this.logger.debug("onForward"),this.switch("forward"),this.animateBezel()},this.onPause=()=>{this.logger.debug("onPause"),this.switch("pause"),this.animateBezel()},this.onPlay=()=>{this.logger.debug("onPlay"),this.switch("play"),this.animateBezel()},this.onCanPlay=()=>{this.logger.debug("onCanPlay"),this.loading=!1},this.onRewind=()=>{this.logger.debug("onRewind"),this.switch("rewind"),this.animateBezel()},this.onWaiting=()=>{var e;this.logger.debug("onWaiting"),this.loading=!0;let t=(null==(e=this.player.video)?void 0:e.currentTime)||0,r=()=>{var e;this.loading&&(null!=(e=this.player.video)&&e.currentTime&&this.player.video.currentTime>t?(this.logger.debug("onWaiting: loading false"),this.loading=!1):setTimeout(r,this.waitingTimeoutMS))};setTimeout(r,this.waitingTimeoutMS)}}connectedCallback(){super.connectedCallback(),this.player.addEventListener(bs.VIDEO_CANPLAY,this.onCanPlay),this.player.addEventListener(bs.VIDEO_WAITING,this.onWaiting),this.player.addEventListener(bs.VIDEO_PLAY,this.onPlay),this.player.addEventListener(bs.VIDEO_PAUSE,this.onPause),this.player.addEventListener(bs.VIDEO_FORWARD,this.onForward),this.player.addEventListener(bs.VIDEO_REWIND,this.onRewind)}disconnectedCallback(){super.disconnectedCallback(),this.player.removeEventListener(bs.VIDEO_CANPLAY,this.onCanPlay),this.player.removeEventListener(bs.VIDEO_WAITING,this.onWaiting),this.player.removeEventListener(bs.VIDEO_PLAY,this.onPlay),this.player.removeEventListener(bs.VIDEO_PAUSE,this.onPause),this.player.removeEventListener(bs.VIDEO_FORWARD,this.onForward),this.player.removeEventListener(bs.VIDEO_REWIND,this.onRewind)}render(){var e=_t({"bezel__loading--hidden":!this.loading});return c`
${this.icon} ${at}
`}switch(e){switch(e){case"forward":this.icon=dt;break;case"pause":this.icon=ot;break;case"play":this.icon=lt;break;case"rewind":this.icon=ct;break;default:return}}},s=(t.componentName="Bezel",t.styles=[ys],Ss([Is({type:Boolean})],t.prototype,"_testing",void 0),Ss([Cs()],t.prototype,"icon",void 0),Ss([on(".bezel__icon")],t.prototype,"iconElement",void 0),Ss([Cs()],t.prototype,"loading",void 0),t=Ss([ws("vturb-bezel")],t),Tt(class extends Cu{constructor(e){if(super(e),e.type!==Et.ATTRIBUTE||"style"!==e.name||2<(null==(e=e.strings)?void 0:e.length))throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(i){return Object.keys(i).reduce((e,t)=>{var r=i[t];return null==r?e:e+`${t=t.includes("-")?t:t.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${r};`},"")}update(e,[r]){let i=e.element.style;if(void 0===this.ht){for(var t in this.ht=new Set,r)this.ht.add(t);return this.render(r)}for(var s in this.ht.forEach(e=>{null==r[e]&&(this.ht.delete(e),e.includes("-")?i.removeProperty(e):i[e]="")}),r){let t=r[s];if(null!=t){this.ht.add(s);let e="string"==typeof t&&t.endsWith(" !important");s.includes("-")||e?i.setProperty(s,e?t.slice(0,-11):t,e?"important":""):i[s]=t}}return y}})),St=(Ls=e`.player .bigplay{width:var(--bigplay-base-size);height:var(--bigplay-base-size);border-radius:var(--bigplay-border-radius);padding:var(--bigplay-padding-y) var(--bigplay-padding-x);border:none;background-color:var(--bigplay-background);outline:0;cursor:pointer;box-sizing:border-box;bottom:0;opacity:var(--bigplay-opacity);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:10;transition:transform var(--base-transition)}.player .bigplay.hidden{display:none}.player .bigplay svg{cursor:pointer;width:100%;height:100%}.player.m-w-360 .bigplay{width:var(--bigplay-size-360);height:var(--bigplay-size-360)}.player.m-w-480 .bigplay{width:var(--bigplay-size-480);height:var(--bigplay-size-480)}.player.m-w-550 .bigplay{width:var(--bigplay-size-550);height:var(--bigplay-size-550)}.player.in-resume .bigplay,.player.smartplay .bigplay{display:none!important}.player.show-controls .bigplay{transform:translate(-50%,calc(-50% - (var(--control-padding) * 2 + 1.5rem)/ 2))}`,Es=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.player.dispatchEvent(new CustomEvent(bs.CONTROLS_ITEMS,{detail:{items:{bigplay:e}}}))},this.togglePlay=e=>{try{e.preventDefault(),e.stopPropagation(),this.player.controls.toggle(),this.player.controllers.bar.show(),this.player.dispatchEvent(new CustomEvent(bs.CONTROL_BAR_CLOSER)),this.logger.debug("Toggle play clicked",{ev:e})}catch(e){this.logger.error("Error toggling play",e)}}}render(){var e=this.player.played,t=this.player.controllers.blockers.anyBlocker("resume","smartAutoPlay");if(e||t)return this.sendControlsEvent(!1),null;this.sendControlsEvent(!0);e=s({backgroundColor:this.player.config.style.background,fill:this.player.config.style.foreground});return c`
${lt}
`}});function dn(e,t){let r=e;try{(e=>{var t=(t=new DOMParser).parseFromString(e,"text/html");return!(!((e=t.body)&&e.textContent&&e.textContent.trim())||e.children.length<=0)})(e)||(r=atob(e),r=(new TextDecoder).decode(Uint8Array.from(r,e=>e.charCodeAt(0))))}catch(e){t.warn("Error decoding headline HTML:",e)}return r}St.componentName="BigPlay",St.reRenderOn=[bs.VIDEO_PAUSE,bs.VIDEO_PLAY],St.styles=Ls,St=Es([ws("vturb-bigplay")],St);var cn=Object.prototype.hasOwnProperty;function un(e,t,r){for(r of e.keys())if(fn(r,t))return r}function fn(e,t){var r,i,s;if(e===t)return 1;if(e&&t&&(r=e.constructor)===t.constructor){if(r===Date)return e.getTime()===t.getTime();if(r===RegExp)return e.toString()===t.toString();if(r===Array){if((i=e.length)===t.length)for(;i--&&fn(e[i],t[i]););return-1===i}if(r===Set){if(e.size!==t.size)return;for(i of e){if((s=i)&&"object"==typeof s&&!(s=un(t,s)))return;if(!t.has(s))return}return 1}if(r===Map){if(e.size!==t.size)return;for(i of e){if((s=i[0])&&"object"==typeof s&&!(s=un(t,s)))return;if(!fn(i[1],t.get(s)))return}return 1}if(r===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(r===DataView){if((i=e.byteLength)===t.byteLength)for(;i--&&e.getInt8(i)===t.getInt8(i););return-1===i}if(ArrayBuffer.isView(e)){if((i=e.byteLength)===t.byteLength)for(;i--&&e[i]===t[i];);return-1===i}if(!r||"object"==typeof e){for(r in i=0,e){if(cn.call(e,r)&&++i&&!cn.call(t,r))return;if(!(r in t&&fn(e[r],t[r])))return}return Object.keys(t).length===i}}return e!=e&&t!=t}let At=As.I,wt=()=>document.createComment(""),Lt=(i,e,s)=>{var a,n=i._$AA.parentNode,o=void 0===e?i._$AB:e._$AA;if(void 0===s){let e=n.insertBefore(wt(),o),t=n.insertBefore(wt(),o);s=new At(e,t,i,i.options)}else{let t=s._$AB.nextSibling,r=s._$AM,e=r!==i;if(e){let e;null!=(a=s._$AQ)&&a.call(s,i),s._$AM=i,void 0!==s._$AP&&(e=i._$AU)!==r._$AU&&s._$AP(e)}if(t!==o||e){let e=s._$AA;for(;e!==t;){var l=e.nextSibling;n.insertBefore(e,o),e=l}}}return s},kt=(e,t,r=e)=>(e._$AI(t,r),e),Rt={},It=e=>{var t;null!=(t=e._$AP)&&t.call(e,!1,!0);let r=e._$AA;for(var i=e._$AB.nextSibling;r!==i;){let e=r.nextSibling;r.remove(),r=e}},Ct=(t,r,i)=>{var s=new Map;for(let e=r;e<=i;e++)s.set(t[e],e);return s},Pt=Tt(class extends Cu{constructor(e){if(super(e),e.type!==Et.CHILD)throw Error("repeat() can only be used in text expressions")}ct(t,e,r){let i;void 0===r?r=e:void 0!==e&&(i=e);var s=[],a=[];let n=0;for(let e of t)s[n]=i?i(e,n):n,a[n]=r(e,n),n++;return{values:a,keys:s}}render(e,t,r){return this.ct(e,t,r).values}update(r,[e,t,i]){var s=r._$AH,{values:a,keys:n}=this.ct(e,t,i);if(!Array.isArray(s))return this.ut=n,a;var o,l=null!=(e=this.ut)?e:this.ut=[],h=[];let d,c,u=0,f=s.length-1,p=0,g=a.length-1;for(;u<=f&&p<=g;)if(null===s[u])u++;else if(null===s[f])f--;else if(l[u]===n[p])h[p]=kt(s[u],a[p]),u++,p++;else if(l[f]===n[g])h[g]=kt(s[f],a[g]),f--,g--;else if(l[u]===n[g])h[g]=kt(s[u],a[g]),Lt(r,h[g+1],s[u]),u++,g--;else if(l[f]===n[p])h[p]=kt(s[f],a[p]),Lt(r,s[u],s[f]),f--,p++;else if(void 0===d&&(d=Ct(n,p,g),c=Ct(l,u,f)),d.has(l[u]))if(d.has(l[f])){let e=c.get(n[p]),t=void 0!==e?s[e]:null;null===t?(o=Lt(r,s[u]),kt(o,a[p]),h[p]=o):(h[p]=kt(t,a[p]),Lt(r,s[u],t),s[e]=null),p++}else It(s[f]),f--;else It(s[u]),u++;for(;p<=g;){var m=Lt(r,h[g+1]);kt(m,a[p]),h[p++]=m}for(;u<=f;){var v=s[u++];null!==v&&It(v)}return this.ut=n,[t,i=Rt]=[r,h],t._$AH=i,y}}),Dt=e`div[id^=vturb-callaction-container-] .callaction__slot:root,vturb-smartplayer:root{--callaction-button-margin:1.25em;--callaction-button-size-lg:1.5em;--callaction-button-size-md:1.25em;--callaction-button-size-sm:1em}div[id^=vturb-callaction-container-] .callaction__slot .callaction,vturb-smartplayer .callaction{font-size:18px;box-sizing:border-box;width:100%}div[id^=vturb-callaction-container-] .callaction__slot .callaction--outside,vturb-smartplayer .callaction--outside{display:flex;justify-content:center;align-items:center;flex-direction:column}div[id^=vturb-callaction-container-] .callaction__slot .callaction--inside,vturb-smartplayer .callaction--inside{position:absolute;top:0;left:0;height:100%;z-index:var(--callaction-index);pointer-events:none}div[id^=vturb-callaction-container-] .callaction__slot .callaction__button,vturb-smartplayer .callaction__button{display:var(--callaction-button-display,inline-block);pointer-events:all;padding:.5em .7em;border:0 solid transparent;background-color:var(--callaction-background);color:var(--callaction-color);font-size:var(--callaction-button-font-size);font-weight:var(--callaction-button-font-weight);line-height:var(--callaction-button-line-height);text-align:center;border-radius:var(--callaction-button-border-radius);text-decoration:none;transition:all .2s ease-in-out}div[id^=vturb-callaction-container-] .callaction__slot .callaction__button:hover,vturb-smartplayer .callaction__button:hover{background-color:var(--callaction-background-hover,var(--callaction-background));color:var(--callaction-color-hover,var(--callaction-color))}.callaction--inside div[id^=vturb-callaction-container-] .callaction__slot .callaction__button,.callaction--inside vturb-smartplayer .callaction__button{position:absolute}.callaction--outside div[id^=vturb-callaction-container-] .callaction__slot .callaction__button,.callaction--outside vturb-smartplayer .callaction__button{margin:var(--callaction-outside-margin) 0}div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--lg,vturb-smartplayer .callaction__button--lg{font-size:1em;padding:.75em 1em}.m-w-550 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--lg,.m-w-550 vturb-smartplayer .callaction__button--lg,.m-w-768 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--lg,.m-w-768 vturb-smartplayer .callaction__button--lg{font-size:1em;padding:.5em .75em}.m-w-360 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--lg,.m-w-360 vturb-smartplayer .callaction__button--lg,.m-w-480 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--lg,.m-w-480 vturb-smartplayer .callaction__button--lg{font-size:1em;padding:.250000005em .5em}div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--md,vturb-smartplayer .callaction__button--md{font-size:1em;padding:.5em .75em}.m-w-550 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--md,.m-w-550 vturb-smartplayer .callaction__button--md,.m-w-768 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--md,.m-w-768 vturb-smartplayer .callaction__button--md{font-size:1em;padding:.375em .5em}.m-w-360 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--md,.m-w-360 vturb-smartplayer .callaction__button--md,.m-w-480 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--md,.m-w-480 vturb-smartplayer .callaction__button--md{font-size:1em;padding:.25em .375em}div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--sm,vturb-smartplayer .callaction__button--sm{font-size:1em;padding:.25em .5em}.m-w-550 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--sm,.m-w-550 vturb-smartplayer .callaction__button--sm,.m-w-768 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--sm,.m-w-768 vturb-smartplayer .callaction__button--sm{font-size:1em;padding:.25em .375em}.m-w-360 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--sm,.m-w-360 vturb-smartplayer .callaction__button--sm,.m-w-480 div[id^=vturb-callaction-container-] .callaction__slot .callaction__button--sm,.m-w-480 vturb-smartplayer .callaction__button--sm{font-size:1em;padding:.125em .25em}`;var pn,ys=e`.callaction{font-size:18px;width:100%}.callaction--outside{display:flex;justify-content:center;align-items:center;flex-direction:column}.callaction--inside{position:absolute;top:0;left:0;height:100%;z-index:var(--callaction-index);pointer-events:none}.callaction__button{display:var(--callaction-button-display,inline-block);pointer-events:all;padding:0;border:0 solid transparent;background-color:var(--callaction-background);color:var(--callaction-color);font-size:var(--callaction-button-font-size);font-weight:var(--callaction-button-font-weight);line-height:var(--callaction-button-line-height);text-align:center;border-radius:var(--callaction-button-border-radius);text-decoration:none;transition:all .2s ease-in-out}.callaction__button:hover{background-color:var(--callaction-background-hover,var(--callaction-background));color:var(--callaction-color-hover,var(--callaction-color))}.callaction--inside .callaction__button{position:absolute}.callaction--outside .callaction__button{margin:var(--callaction-outside-margin) 0}.callaction__button--lg{font-size:calc(var(--callaction-button-size-lg)*1)}.m-w-550 .callaction__button--lg,.m-w-768 .callaction__button--lg{font-size:calc(var(--callaction-button-size-lg)*.8333333333)}.m-w-360 .callaction__button--lg,.m-w-480 .callaction__button--lg{font-size:calc(var(--callaction-button-size-lg)*.6666666667)}.callaction__button--md{font-size:calc(var(--callaction-button-size-md)*1)}.m-w-550 .callaction__button--md,.m-w-768 .callaction__button--md{font-size:calc(var(--callaction-button-size-md)*.8)}.m-w-360 .callaction__button--md,.m-w-480 .callaction__button--md{font-size:calc(var(--callaction-button-size-md)*.7)}.callaction__button--sm{font-size:calc(var(--callaction-button-size-sm)*1)}.m-w-550 .callaction__button--sm,.m-w-768 .callaction__button--sm{font-size:calc(var(--callaction-button-size-sm)*.875)}.m-w-360 .callaction__button--sm,.m-w-480 .callaction__button--sm{font-size:calc(var(--callaction-button-size-sm)*.75)}.callaction__button--tl{top:var(--callaction-button-margin);left:var(--callaction-button-margin)}.callaction__button--tc{top:var(--callaction-button-margin);left:50%;transform:translateX(-50%)}.callaction__button--tr{top:var(--callaction-button-margin);right:var(--callaction-button-margin)}.callaction__button--cl{top:50%;left:var(--callaction-button-margin);transform:translateY(-50%)}.callaction__button--cc{top:50%;left:50%;transform:translate(-50%,-50%)}.callaction__button--cr{top:50%;right:var(--callaction-button-margin);transform:translateY(-50%)}.callaction__button--bl{bottom:var(--callaction-button-margin);left:var(--callaction-button-margin)}.callaction__button--bc{bottom:var(--callaction-button-margin);left:50%;transform:translateX(-50%)}.callaction__button--br{bottom:var(--callaction-button-margin);right:var(--callaction-button-margin)}`,Ss=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.cleanupStaleCallActionElements(this.callActions.map(e=>e.id)),this.player.alreadyPlayed&&this.player.video&&this.changeActiveItemsByTime(this.player.video.currentTime)},this.onTimeUpdate=e=>{e=e.detail.time;this.changeActiveItemsByTime(e)},this.fragment=this.doc.createDocumentFragment(),this.injectGlobalCss()}static shouldLoad(e,t){return e.callActions.active&&0t.includes(e.type))}get callActions(){var e;return(null==(e=null==(e=null==(e=this.player)?void 0:e.config)?void 0:e.callActions)?void 0:e.items)||[]}get callActionsByType(){return this.callActions.filter(e=>this.types.includes(e.type))}connectedCallback(){super.connectedCallback(),setTimeout(()=>{this.player.addEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate),this.player.addEventListener(bs.PLAYER_CONFIG_UPDATED,this.onPlayerConfigUpdated),this.player.dispatchEvent(new CustomEvent(bs.CALLACTION_CONNECTED,{detail:{items:this.player.config.callActions.items}}))},pn.DELAY_AFTER_PLAY)}disconnectedCallback(){super.disconnectedCallback(),this.player.removeEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate),this.player.removeEventListener(bs.PLAYER_CONFIG_UPDATED,this.onPlayerConfigUpdated),this.cleanupCallActionElements(this.callActionsByType.map(e=>e.id))}getItems(t){return this.player.controllers.blockers.anyBlocker("smartAutoPlay","resume")?[]:this.callActionsByType.filter(e=>t>=e.range.start&&t<=e.range.finish)}getOrCreateAdjacentElement(e){var t;try{var r=null==(t=this.player.interface.parentElement)?void 0:t.querySelector("#callaction-"+e.id);return r||((r=this.doc.createElement("div")).id="callaction-"+e.id,r.classList.add("callaction__html"),r.style.display="none",r.setAttribute("data-callaction-id",e.id),this.player.interface.insertAdjacentElement("afterend",r)),r}catch(e){return this.logger.error("Error getting or creating adjacent element",e),null}}injectGlobalCss(){var e;this.doc.getElementById("callaction-slot-css")||((e=this.doc.createElement("style")).id="callaction-slot-css",e.textContent=Dt.toString(),this.doc.head.appendChild(e))}onLinkClick(e,t){try{var r;e.stopPropagation(),this.player.isIframe&&e.preventDefault(),e.target&&e.target instanceof HTMLAnchorElement&&(e.target.href=this.player.urlUpdater(e.target.href,e.target),r=t.openInNewTab||e.ctrlKey||e.metaKey||e.shiftKey,this.player.dispatchEvent(new CustomEvent(bs.IFRAME_OPEN_LINK,{detail:{url:e.target.href,target:r?"_blank":e.target.target}})),this.player.controllers.analytics.onPlayerExitClick())}catch(e){this.logger.error("Error handling link click",e)}}onLinkMouseover(e,t){e.stopPropagation(),e.target&&e.target instanceof HTMLAnchorElement&&(e.target.href=this.player.urlUpdater(e.target.href,e.target))}onLinkTouchstart(e,t){e.stopPropagation(),e.target&&e.target instanceof HTMLAnchorElement&&(e.target.href=this.player.urlUpdater(e.target.href,e.target))}changeActiveItemsByTime(e){try{var t,r=[...this.activeItems.values()],i=this.getItems(e);fn(r,i)||(this.activeItems=new Map(i.map(e=>[e.id,e])),t={items:this.activeItems,types:this.types},this.logger.debug("Call actions elements changed",t),this.player.dispatchEvent(new CustomEvent(bs.CALLACTION_ELEMENTS_CHANGED,{detail:t})))}catch(e){this.logger.error("Error updating active items by time",e)}}findCallActionElements(){var e=Array.from((null==(e=null==(r=this.player.interface)?void 0:r.querySelectorAll)?void 0:e.call(r,".callaction__button"))||[]),t=Array.from((null==(t=null==(r=null==(r=this.player.interface)?void 0:r.parentElement)?void 0:r.querySelectorAll)?void 0:t.call(r,".callaction__html"))||[]),r=[...e,...t];return new Map(r.map(e=>[e.getAttribute("data-callaction-id")||"",e]))}cleanupStaleCallActionElements(e){let r=new Set(e);this.findCallActionElements().forEach((e,t)=>{t&&!r.has(t)&&e.remove()})}cleanupCallActionElements(e){let r=new Set(e);this.findCallActionElements().forEach((e,t)=>{t&&r.has(t)&&e.remove()})}render(){var e=this.types.includes("inner_button")?"inside":"outside";return c`
${this.renderRichElement()}
`}renderBelowButton(t){var e=s({"--callaction-background":t.colors.background,"--callaction-background-hover":t.colors.backgroundHover,"--callaction-color":t.colors.text,"--callaction-color-hover":t.colors.textHover,display:this.activeItems.has(t.id)?"block":"none"}),r="callaction-button-"+t.id;return{button:c`this.onLinkClick(e,t)} @mouseover=${e=>this.onLinkMouseover(e,t)} @touchstart=${e=>this.onLinkTouchstart(e,t)} style=${e} data-callaction-id=${t.id} > ${t.content} `,id:r,slot:c``}}renderCustomHtml(e){var t=dn(e.html,this.logger),r=this.getOrCreateAdjacentElement(e);return r&&(r.innerHTML=t,this.activeItems.has(e.id)?r.style.display="block":r.style.display="none"),null}renderFragment(){var e;if(this.fragment&&!this.player.interface.contains(this.fragment))return e=c` ${Pt(this.callActionsByType,e=>e.id,e=>"below_button"!==e.type||this.player.isIframe?"custom_html"!==e.type||this.player.isIframe?"inner_button"===e.type?this.renderInsideButton(e).button:c``:this.renderCustomHtml(e):this.renderBelowButton(e).button)} `,Qe(e,this.fragment),this.player.interface.appendChild(this.fragment),e}renderInsideButton(t){var e=s({"--callaction-background":t.colors.background,"--callaction-background-hover":t.colors.backgroundHover,"--callaction-color":t.colors.text,"--callaction-color-hover":t.colors.textHover,display:this.activeItems.has(t.id)?"block":"none"}),r="callaction-button-"+t.id;return{button:c`this.onLinkClick(e,t)} @mouseover=${e=>this.onLinkMouseover(e,t)} @touchstart=${e=>this.onLinkTouchstart(e,t)} style=${e} data-callaction-id=${t.id} > ${t.content} `,id:r,slot:c``}}renderRichElement(){var e=c` ${Pt(this.activeItems.values(),e=>e.id,(e,t)=>"below_button"!==e.type||this.player.isIframe?"custom_html"!==e.type||this.player.isIframe?"inner_button"===e.type?this.renderInsideButton(e).slot:c``:null:this.renderBelowButton(e).slot)} `;return this.renderFragment(),e}},xt=(a.componentName="CallAction",a.DELAY_AFTER_PLAY=200,a.styles=[ys],Ss([Cs()],a.prototype,"activeItems",void 0),Ss([Ps(".callaction")],a.prototype,"callaction",void 0),Ss([Is({type:Array})],a.prototype,"types",void 0),a=pn=Ss([ws("vturb-callaction")],a),{en:{backward:"Backward",blocked:"Blocked",forward:"Forward",fullscreen:"Fullscreen","license.blocked.by_rule":"Unable to display the video!","license.blocked.default_message":"BLOCKED","license.blocked.domain_not_allowed":"This domain is not in the list of allowed domains! Update the domain settings in the panel.","license.blocked.indefinite_block":"This domain has been blocked indefinitely. Contact support to learn more.","license.blocked.payment_open":"Your invoice is pending. Update your payment method in the panel.",loop:"Loop",pause:"Pause",play:"Play",poweredBy:"Powered by VTurb",poweredByLink:"https://www.vturb.com/en/?via=player&utm_source=player","contextmenu.optimizeYourVslNow":"Optimize Your VSL Now!","contextmenu.optimizeYourVslNowLink":"https://vturb.com/en?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=optimize_your_vsl_now_en","contextmenu.wantToOptimizeYourVsl":"Want to Optimize Your VSL?","contextmenu.wantToOptimizeYourVslLink":"https://vturb.com/en?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=want_to_optimize_your_vsl_en","contextmenu.clickToOptimizeYourVslCheckEmoji":"Click to Optimize Your VSL ✅","contextmenu.clickToOptimizeYourVslCheckEmojiLink":"https://vturb.com/en?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=click_to_optimize_your_vsl_check_emoji_en",replay:"Replay",resume:"Resume","resume.play":"Continue watching","resume.replay":"Watch from beginning","resume.title":"You have already started watching this","smallplay.pause":"Pause","smallplay.play":"Play",speed:"Speed","speed.normal":"Normal","volume.control":"Volume control"},pt:{backward:"Backward",blocked:"Bloqueado",forward:"Forward",fullscreen:"Fullscreen","license.blocked.by_rule":"Não foi possível exibir o vídeo!","license.blocked.default_message":"BLOQUEADO","license.blocked.domain_not_allowed":"Este domínio não está na lista de domínios permitidos! Atualize as configurações de domínios no painel.","license.blocked.indefinite_block":"Esse domínio foi bloqueado por tempo indeterminado. Contate o suporte para saber mais.","license.blocked.payment_open":"Sua fatura está em aberto. Atualize o método de pagamento no painel.",loop:"Repetir",pause:"Pause",play:"Play",poweredBy:"Conheça o VTurb",poweredByLink:"https://www.vturb.com/pt-BR/?via=player&utm_source=player","contextmenu.optimizeYourVslNow":"Otimize Seu VSL Agora!","contextmenu.optimizeYourVslNowLink":"https://vturb.com/pt-BR?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=optimize_your_vsl_now_pt-br","contextmenu.wantToOptimizeYourVsl":"Quer Otimizar Seu VSL?","contextmenu.wantToOptimizeYourVslLink":"https://vturb.com/pt-BR?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=want_to_optimize_your_vsl_pt-br","contextmenu.clickToOptimizeYourVslCheckEmoji":"Clique Para Otimizar Seu VSL ✅","contextmenu.clickToOptimizeYourVslCheckEmojiLink":"https://vturb.com/pt-BR?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=click_to_optimize_your_vsl_check_emoji_pt-br",replay:"Reativar",resume:"Resumir","resume.play":"Continuar assistindo","resume.replay":"Assistir do início","resume.title":"Você já começou a assistir isso","smallplay.pause":"Pausar","smallplay.play":"Reproduzir",speed:"Velocidade","speed.normal":"Normal","volume.control":"Controle de volume"},es:{backward:"Retroceder",blocked:"Bloqueado",forward:"Avanzar",fullscreen:"Pantalla completa","license.blocked.by_rule":"¡No se puede mostrar el video!","license.blocked.default_message":"BLOQUEADO","license.blocked.domain_not_allowed":"¡Este dominio no está en la lista de dominios permitidos! Actualiza la configuración de dominio en el panel.","license.blocked.indefinite_block":"Este dominio ha sido bloqueado indefinidamente. Contacta al soporte para obtener más información.","license.blocked.payment_open":"Tu factura está pendiente. Actualiza tu método de pago en el panel.",loop:"Repetir",pause:"Pausar",play:"Reproducir",poweredBy:"Desarrollado por VTurb",poweredByLink:"https://www.vturb.com/en/?via=player&utm_source=player","contextmenu.optimizeYourVslNow":"¡Optimiza Tu VSL Ahora!","contextmenu.optimizeYourVslNowLink":"https://vturb.com/es?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=optimize_your_vsl_now_es","contextmenu.wantToOptimizeYourVsl":"¿Quieres Optimizar Tu VSL?","contextmenu.wantToOptimizeYourVslLink":"https://vturb.com/es?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=want_to_optimize_your_vsl_es","contextmenu.clickToOptimizeYourVslCheckEmoji":"Haz Clic para Optimizar Tu VSL ✅","contextmenu.clickToOptimizeYourVslCheckEmojiLink":"https://vturb.com/es?via=player&utm_medium=powered_by_VTurb&utm_campaign=viral_player&utm_source=player&utm_content=click_to_optimize_your_vsl_check_emoji_es",replay:"Repetir",resume:"Reanudar","resume.play":"Continuar viendo","resume.replay":"Ver desde el principio","resume.title":"Ya has comenzado a ver esto","smallplay.pause":"Pausar","smallplay.play":"Reproducir",speed:"Velocidad","speed.normal":"Normal","volume.control":"Control de volumen"}}),Ot="en",n=e=>(xt[Ot]||(console.warn(`Language ${Ot} not found`),xt.en))[e];function gn(){try{return localStorage.setItem("feature_test","yes"),localStorage.removeItem("feature_test"),1}catch(e){}}function mn(e,t,r={}){let i={saveStorageSuccessful:!1,storageType:"none",storedIdentifier:void 0,wasStoraged:!1};if(!e||0===e.length)return[t,i];let{identifierKey:s,storageKey:a,store:n}=r;if(a&&s){if(n)i.storageType="store",i.storedIdentifier=n.get(a,void 0);else if(gn()){i.storageType="localStorage";t=localStorage.getItem(a);if(t)try{i.storedIdentifier=JSON.parse(t)}catch(e){i.storedIdentifier=t}}if(void 0!==i.storedIdentifier){r=e.find(e=>e[s]===i.storedIdentifier);if(r)return i.wasStoraged=!0,i.saveStorageSuccessful=!0,[r,i]}}t=e[Math.floor(Math.random()*e.length)];if(a&&s){r=t[s];try{n?(n.set(a,r),i.saveStorageSuccessful=!0):gn()&&(localStorage.setItem(a,JSON.stringify(r)),i.saveStorageSuccessful=!0)}catch(e){i.saveStorageSuccessful=!1}}return[t,i]}let Mt=[{translationLinkKey:"contextmenu.optimizeYourVslNowLink",translationKey:"contextmenu.optimizeYourVslNow"},{translationLinkKey:"contextmenu.wantToOptimizeYourVslLink",translationKey:"contextmenu.wantToOptimizeYourVsl"},{translationLinkKey:"contextmenu.clickToOptimizeYourVslCheckEmojiLink",translationKey:"contextmenu.clickToOptimizeYourVslCheckEmoji"}],r=(Ls=e`.contextmenu{position:fixed;background:rgba(0,0,0,.9);z-index:1002;align-items:center;display:flex;font-size:18px;border-radius:.3em}.contextmenu a{display:inline-block;padding:.7em 1em;cursor:pointer;text-decoration:none;color:#fff;min-width:10.625em;text-align:left;font-size:.8em;pointer-events:auto;white-space:nowrap}.contextmenu a:hover{background-color:hsla(0,0%,100%,.1)}.contextmenu__backdrop{display:flex;position:fixed;top:0;left:0;width:100%;height:100%;z-index:1001;pointer-events:auto}`,Es=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{var[e]=mn(Mt,Mt[0]);return e||Mt[0]})(),this.text="",this.visible=!1,this.x=0,this.y=0,this.hide=e=>{e.stopPropagation(),this.visible=!1},this.show=e=>{e.preventDefault(),this.visible=!0,this.x=e.clientX,this.y=e.clientY,this.link=n(this.option.translationLinkKey),this.text=n(this.option.translationKey);let t=e.clientX;this.updateComplete.then(()=>{var e=this.querySelector(".contextmenu");e&&(e=e.getBoundingClientRect().width,this.x+e>window.innerWidth)&&(this.x=Math.max(0,t-e))})}}connectedCallback(){var e;super.connectedCallback(),null!=(e=this.player.player)&&e.addEventListener("contextmenu",this.show)}disconnectedCallback(){var e;super.disconnectedCallback(),null!=(e=this.player.player)&&e.removeEventListener("contextmenu",this.show)}render(){if(this.visible)return c`
`}}),Ft=(r.styles=[Ls],Es([Cs()],r.prototype,"link",void 0),Es([Cs()],r.prototype,"option",void 0),Es([Cs()],r.prototype,"text",void 0),Es([Cs()],r.prototype,"visible",void 0),Es([Cs()],r.prototype,"x",void 0),Es([Cs()],r.prototype,"y",void 0),r=Es([ws("vturb-context-menu")],r),t=>e=>{if(_s()&&"click"===e.type)try{"function"==typeof e.preventDefault&&e.preventDefault(),"function"==typeof e.stopPropagation&&e.stopPropagation()}catch(e){}else t(e,_s())}),Nt=(As=e`.player.forward{pointer-events:auto}.player.forward svg{fill:inherit}`,ys=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.player.video&&(e.stopPropagation(),this.player.dispatchEvent(new CustomEvent(bs.VIDEO_FORWARD)),this.player.controllers.bar.show(),this.player.controls.seek(this.player.video.currentTime+10))}),this.noop=Ft(e=>{e.stopPropagation(),e.preventDefault()})}render(){var e=s({color:this.player.config.style.foreground,fill:this.player.config.style.foreground});return c` `}});function Ds(e,t,r){return e?t():null==r?void 0:r()}Nt.styles=As,Nt=ys([ws("vturb-forward")],Nt),Ss=e`.player.fullscreen{pointer-events:auto}.player.fullscreen svg{fill:inherit}`,Ls=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.player.controllers.fullscreen.toggle()}}render(){var e=s({color:this.player.config.style.foreground,fill:this.player.config.style.foreground});return c` `}};Ut.reRenderOn=[bs.FULLSCREEN_ENTER,bs.FULLSCREEN_EXIT],Ut.styles=Ss,Ut=Ls([ws("vturb-fullscreen")],Ut);var Es=e`.progress-bar{position:relative;width:100%;cursor:pointer;align-items:center!important;justify-content:center!important}.progress-bar__background{position:relative;width:100%;height:var(--progressbar-height);background-color:var(--progressbar-background-color)}.progress-bar__buffer{position:absolute;top:0;left:0;height:100%;background-color:var(--progressbar-buffer-color,rgba(255,255,255,.4));visibility:hidden}.progress-bar__fill{position:absolute;top:0;left:0;height:100%;background-color:var(--progressbar-fill-color,var(--style-foreground))}.progress-bar__handle{position:absolute;top:50%;left:0;width:var(--progressbar-handle-size);height:var(--progressbar-handle-size);background-color:var(--progressbar-handle-color);border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0}.progress-bar__backdrop{position:absolute;top:-100vh;left:-100vw;width:300vw;height:300vh;background-color:rgba(0,0,0,0);display:none;z-index:1}.progress-bar__time-tooltip{position:absolute;bottom:50%;left:0;padding:4px 8px;background-color:rgba(0,0,0,.8);color:#fff;font-size:.75em;border-radius:4px;transform:translateX(-50%) translateY(-10px);display:none}.progress-bar:hover .progress-bar__handle{transform:translate(-50%,-50%) scale(1);opacity:1}`,As=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{e=e.detail.video,e=e.buffered.length?e.buffered.end(e.buffered.length-1)/e.duration:0;this.elProgressBarBuffer.style.width=100*e+"%"},this.intervalObserver=()=>{!this.dragging&&this.player.video&&this.onTimeUpdate(this.player.video.currentTime)}}connectedCallback(){let e=Object.create(null,{connectedCallback:{get:()=>super.connectedCallback}});return vn(this,void 0,void 0,function*(){e.connectedCallback.call(this),this.logger.debug("ProgressBar connected"),this.player.addEventListener(bs.VIDEO_PROGRESS,this.eventOnProgress),this.intervalId=setInterval(this.intervalObserver,50)})}disconnectedCallback(){var e;super.disconnectedCallback(),this.logger.debug("ProgressBar disconnected"),null!=(e=this.player)&&e.removeEventListener(bs.VIDEO_PROGRESS,this.eventOnProgress),this.intervalId&&(clearInterval(this.intervalId),this.intervalId=null)}onClick(e){var t,r=this.getProgress(e,this.elProgressBar);this.player.controls.seek(r*(null!=(t=null==(t=this.player.video)?void 0:t.duration)?t:1)),window.TouchEvent&&e instanceof TouchEvent&&0<(null==(t=null==e?void 0:e.touches)?void 0:t.length)&&(this.showTooltip(this.elProgressBarTimeTooltip,r),this.scheduleTooltipHide()),this.dragging=!1,this.elProgressBarBackdrop.style.display="none"}onMouseDown(e){this.dragging=!0,this.elProgressBarBackdrop.style.display="block",this.onMouseMove(e)}onMouseEnter(e){this.onMouseMove(e)}onMouseLeave(e){window.TouchEvent&&e instanceof TouchEvent&&this.onClick(e),this.elProgressBarTimeTooltip.style.display="none"}onMouseMove(e){var t;this.elProgressBarTimeTooltip&&this.elProgressBar&&(t=(e=this.getProgress(e,this.elProgressBar))*(null!=(t=null==(t=this.player.video)?void 0:t.duration)?t:1),this.tooltipProgress=e,this.elProgressBarTimeTooltip.textContent=this.timeToDisplay(t),this.elProgressBarTimeTooltip.style.left=100*e+"%",this.elProgressBarTimeTooltip.style.display="block",this.player.controllers.bar.show(),this.dragging)&&this.onTimeUpdate(t)}onMouseUp(e){this.dragging&&setTimeout(()=>{this.onClick(e)},50)}onTimeUpdate(e){e/=null!=(e=null==(e=this.player.video)?void 0:e.duration)?e:1;this.elProgressBarFill.style.width=100*e+"%",this.elProgressBarHandle.style.left=100*e+"%"}onVideoEnded(){this.elProgressBarFill.style.width="100%",this.elProgressBarHandle.style.left="100%"}render(){return c`
00:00
`}getProgress(e,t,r){var{left:t,width:i}=t.getBoundingClientRect();let s=this.tooltipProgress;return"clientX"in e?s=(e.clientX-t)/i:"touches"in e&&0{this.elProgressBarTimeTooltip.style.display="none",this.tooltipHideTimeout=null},this.tooltipHideDelay)}showTooltip(e,t){var r;e&&(r=t*(null!=(r=null==(r=this.player.video)?void 0:r.duration)?r:1),e.textContent=this.timeToDisplay(r),e.style.left=100*t+"%",e.style.display="block")}timeToDisplay(e){var t=Math.floor(e/3600),r=Math.floor(e%3600/60),e=Math.floor(e%60);return 0{e.stopPropagation(),this.player.dispatchEvent(new CustomEvent(bs.CONTROL_BAR_CLOSER)),this.player.video&&(this.player.dispatchEvent(new CustomEvent(bs.VIDEO_REWIND)),this.player.controllers.bar.show(),this.player.controls.seek(Math.max(0,(null==(e=this.player.video)?void 0:e.currentTime)-10)))}),this.noop=Ft(e=>{e.stopPropagation(),e.preventDefault()})}render(){var e=s({color:this.player.config.style.foreground,fill:this.player.config.style.foreground}),t=_t({rewind:!0});return c` `}}),$t=(Bt.styles=ys,Bt=Ss([ws("vturb-rewind")],Bt),function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.player.controls.toggle(),this.player.controllers.bar.show()}}connectedCallback(){super.connectedCallback(),this.player.addEventListener(bs.VIDEO_PLAY,()=>this.requestUpdate()),this.player.addEventListener(bs.VIDEO_PAUSE,()=>this.requestUpdate())}render(){return c` `}},Gt=(Vt.styles=e``,Vt=$t([ws("vturb-smallplay")],Vt),Ls=e`:host{display:block}.menu-item{display:flex;align-items:center;height:var(--menu-item-height);padding:calc(var(--menu-padding)/2) var(--menu-padding);cursor:pointer;transition:background-color var(--menu-transition);user-select:none}.menu-item:hover{background-color:var(--menu-hover-color)}.menu-item__icon{display:flex;align-items:center;justify-content:center;width:var(--menu-icon-size);height:var(--menu-icon-size);margin-right:var(--menu-padding);color:var(--menu-icon-color);fill:var(--menu-icon-color)}.menu-item__icon svg{width:1em;height:1em}.menu-item__label{flex:1;font-size:var(--menu-font-size);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-item__check{margin-left:var(--menu-padding);color:var(--menu-icon-color);fill:var(--menu-icon-color)}.menu-item__check svg{width:1em;height:1em}`,Es=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.dispatchEvent(new CustomEvent("item-selected",{bubbles:!0,composed:!0,detail:{value:this.value}}))}),this.icon="",this.label="",this.selected=!1}render(){return c` `}}),Ht=(Gt.styles=[Ls],Es([Is({type:String})],Gt.prototype,"value",void 0),Es([Is({type:String})],Gt.prototype,"icon",void 0),Es([Is({type:String})],Gt.prototype,"label",void 0),Es([Is({reflect:!0,type:Boolean})],Gt.prototype,"selected",void 0),Gt=Es([ws("smart-menu-item")],Gt),As=e`:host{--menu-bg-color:#203EA6;--menu-text-color:#FAFAFA;--menu-hover-color:#2B4BB3;--menu-selected-color:#2B4BB3;--menu-icon-color:#FFFFFF;--menu-divider-color:rgba(255, 255, 255, 0.1);--menu-shadow:0 4px 6px rgba(0, 0, 0, 0.1);--menu-item-height:1.6em;--menu-padding:0.6em;--menu-border-radius:0.4em;--menu-icon-size:0.75em;--menu-font-size:0.75em;--menu-transition:0.2s ease;display:block}.menu{background-color:var(--menu-bg-color);border-radius:var(--menu-border-radius);box-shadow:var(--menu-shadow);color:var(--menu-text-color);min-width:10em;overflow:hidden;display:none}.menu[opened]{display:flex;flex-direction:column}.menu.top-left{left:0;top:0}.menu.top-right{right:0;top:0}.menu.bottom-left{left:0;bottom:0}.menu.bottom-right{right:0;bottom:0}.menu__header{font-size:var(--menu-font-size);padding:var(--menu-padding);border-bottom:1px solid var(--menu-divider-color);display:flex;align-items:center;height:var(--menu-item-height)}.menu__content{display:flex;flex-direction:column;overflow-y:auto}`,ys=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{var e=document.querySelector(this.target);e&&(e=e.getBoundingClientRect(),this.style.left=e.left+"px",this.style.top=e.top+"px")}}connectedCallback(){super.connectedCallback(),this.target&&(window.addEventListener("resize",this._reposition),window.addEventListener("scroll",this._reposition))}disconnectedCallback(){super.disconnectedCallback(),this.target&&(window.removeEventListener("resize",this._reposition),window.removeEventListener("scroll",this._reposition))}render(){return c` `}}),jt=(Ht.styles=[As],ys([Is({reflect:!0,type:Boolean})],Ht.prototype,"opened",void 0),ys([Is({type:String})],Ht.prototype,"position",void 0),ys([Is({type:String})],Ht.prototype,"target",void 0),ys([Is({type:String})],Ht.prototype,"title",void 0),Ht=ys([ws("smart-menu")],Ht),Ss=e`:host{display:block}.submenu__header{display:flex;align-items:center;height:var(--menu-item-height);padding:0 var(--menu-padding);cursor:pointer;transition:background-color var(--menu-transition);user-select:none}.submenu__header:hover{background-color:var(--menu-hover-color)}.submenu__header ::slotted([slot=icon]){width:var(--menu-icon-size);height:var(--menu-icon-size);margin-right:var(--menu-padding);color:var(--menu-icon-color)}.submenu__label{flex:1;font-size:var(--menu-font-size)}.submenu__value{margin-right:var(--menu-padding);opacity:.8}.submenu__arrow{display:flex;align-items:center;transition:transform var(--menu-transition);color:var(--menu-icon-color)}.submenu__arrow.opened{transform:rotate(90deg)}.submenu__content{display:none;background-color:var(--menu-hover-color)}.submenu__content[opened]{display:block}.submenu__switch{display:flex;align-items:center}`,Ls=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3 `}_handleClick(){this.opened=!this.opened,this.dispatchEvent(new CustomEvent("submenu-toggle",{bubbles:!0,composed:!0,detail:{opened:this.opened}}))}}),zt=(jt.styles=[Ss],Ls([Is({type:Boolean})],jt.prototype,"hasSwitch",void 0),Ls([Is({type:String})],jt.prototype,"label",void 0),Ls([Is({reflect:!0,type:Boolean})],jt.prototype,"opened",void 0),Ls([Is({type:String})],jt.prototype,"value",void 0),jt=Ls([ws("smart-submenu")],jt),Es=e`:host{display:inline-block}.switch{--switch-width:40px;--switch-height:24px;--switch-padding:2px;--switch-thumb-size:calc(var(--switch-height) - (var(--switch-padding) * 2));display:inline-flex;align-items:center;cursor:pointer}.switch__track{width:var(--switch-width);height:var(--switch-height);border-radius:calc(var(--switch-height)/2);background-color:hsla(0,0%,100%,.3);padding:var(--switch-padding);transition:background-color var(--menu-transition)}.switch__thumb{width:var(--switch-thumb-size);height:var(--switch-thumb-size);border-radius:50%;background-color:var(--menu-text-color);transform:translateX(0);transition:transform var(--menu-transition)}.switch[aria-checked=true] .switch__track{background-color:var(--menu-selected-color)}.switch[aria-checked=true] .switch__thumb{transform:translateX(calc(var(--switch-width) - var(--switch-height)))}`,As=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3
`}_handleClick(){this.checked=!this.checked,this.dispatchEvent(new CustomEvent("switch-change",{bubbles:!0,composed:!0,detail:{checked:this.checked}}))}});zt.styles=[Es],As([Is({reflect:!0,type:Boolean})],zt.prototype,"checked",void 0),zt=As([ws("smart-switch")],zt);var yn,ys=e`vturb-speed-control{position:relative}.m-w-360 vturb-speed-control .speed-control__option{font-size:.7em}.m-w-480 vturb-speed-control .speed-control__option{font-size:.8em}.m-w-550 vturb-speed-control .speed-control__option{font-size:.9em}#speed-control-menu{--menu-bg-color:var(--style-background-opacity);--menu-text-color:var(--style-foreground);--menu-hover-color:var(--style-background);--menu-selected-color:var(--style-background);--menu-icon-color:var(--style-foreground);--menu-divider-color:rgba(255, 255, 255, 0.1);--menu-shadow:0 4px 6px rgba(0, 0, 0, 0.1)}.speed-control__current{display:inline-flex;align-items:center;text-align:center;color:var(--style-foreground);font-size:1em}.speed-control__options{position:absolute!important;display:flex;flex-direction:column;bottom:100%;right:0;white-space:nowrap;justify-content:flex-end}.speed-control__options button.speed-control__option{padding:.3em 1.5em;background-color:var(--style-background-opacity);opacity:1;color:#fff;cursor:pointer;text-align:left;width:100%;display:block;font-size:1em;padding:.5em 1.5em}.m-w-360 .speed-control__options button.speed-control__option{padding:.3em 1em;font-size:.7em}.m-w-480 .speed-control__options button.speed-control__option{padding:.4em 1.2em;font-size:.8em}.m-w-550 .speed-control__options button.speed-control__option{padding:.4em 1.5em;font-size:.9em}.speed-control__options button.speed-control__option:hover{background-color:var(--style-background-90)}`,Ss=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.mountedMenu||!e||(this.mountedMenu=e),this._updatePosition()},this._updatePosition=()=>{if(this.mountedMenu&&this.speedControl)if(10this._updatePosition(),10);this.tries=0,this.mountedMenu.style.visibility="visible";let e=r-s-10;r=t+i-a;e<0&&(e=0),this.mountedMenu.style.top=e+"px",this.mountedMenu.style.left=r+"px"}},this.close=e=>{var t;this.player.controlBar.removeEventListener("click",this.close),null!=(t=this.player.player)&&t.removeEventListener("click",this.close),this.player.removeEventListener(bs.CONTROL_BAR_CLOSER,this.close),this.speedOptionsVisible=!1,this.player.controllers.bar.blockClose=!1,this.requestUpdate()},this.onSpeedChange=()=>{this.requestUpdate()},this.onSpeedControlClick=e=>{e.stopPropagation(),"click"===e.type&&_s()?e.preventDefault():this.toggleSpeedOptions()},this.open=()=>{var e;this.player.controlBar.addEventListener("click",this.close),null!=(e=this.player.player)&&e.addEventListener("click",this.close),this.player.addEventListener(bs.CONTROL_BAR_CLOSER,this.close),this.speedOptionsVisible=!0,this.player.controllers.bar.blockClose=!0,this.requestUpdate()}}get currentSpeed(){var e;return null!=(e=null==(e=this.player.video)?void 0:e.playbackRate)?e:1}connectedCallback(){var e;super.connectedCallback(),null!=(e=this.player)&&e.addEventListener(bs.VIDEO_SPEEDCHANGE,this.onSpeedChange),window.addEventListener("resize",this._updatePosition),window.addEventListener("scroll",this._updatePosition)}disconnectedCallback(){var e;super.disconnectedCallback(),null!=(e=this.player)&&e.removeEventListener(bs.VIDEO_SPEEDCHANGE,this.onSpeedChange),window.removeEventListener("resize",this._updatePosition),window.removeEventListener("scroll",this._updatePosition)}render(){var e=_t({active:this.speedOptionsVisible,"speed-control":!0});return c`
{e.stopPropagation(),e.preventDefault()}} > ${Ds(this.speedOptionsVisible,()=>c` {this.setSpeed(Number(e.detail.value)),setTimeout(()=>{this.player.dispatchEvent(new CustomEvent(bs.CONTROL_BAR_CLOSER))},yn.CLOSE_DELAY)}} @click=${e=>{e.stopPropagation(),e.preventDefault()}} @touchend=${e=>{e.stopPropagation(),e.preventDefault()}} > `)}
`}renderSpeedOptions(){return c``}setSpeed(e,t){t&&(t.stopPropagation(),t.preventDefault()),this.player.controls.speed(e)}toggleSpeedOptions(){this.speedOptionsVisible?this.close():this.open()}};o.CLOSE_DELAY=250,o.ComponentName="SpeedControl",o.reRenderOn=[bs.PLAYER_RESIZE],o.speedOptions=[.5,.75,1,1.25,1.5,2],o.styles=ys,Ss([Ps(".speed-control")],o.prototype,"speedControl",void 0),o=yn=Ss([ws("vturb-speed-control")],o);var bn,Ls=e`.subtitles{position:absolute;bottom:calc(var(--fakebar-height,0) + .5em);left:50%;text-align:center;color:var(--style-foreground);transform:translateX(-50%);text-shadow:var(--subtitle-text-shadow);max-width:var(--subtitle-max-width);width:100%;z-index:9}.m-w-360 .subtitles,.m-w-480 .subtitles,.m-w-550 .subtitles{max-width:var(--subtitle-max-width-small)}.subtitles span{margin:0;text-align:inherit;padding:var(--subtitle-padding);-webkit-box-decoration-break:clone;box-decoration-break:clone;font-weight:var(--subtitle-font-weight);line-height:var(--subtitle-line-height);font-size:1em;font-family:var(--style-font-family);white-space:pre-wrap;text-shadow:var(--subtitle-text-shadow);letter-spacing:var(--subtitle-letter-spacing)}.subtitles span span{position:relative}`,Es=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{var e=this.player.config.video.width;let t=this.player.config.subtitles.fontSize;"string"==typeof t&&(t=Number(t.replace("px","").replace("%","").replace("em","").replace("rem","")));var r=Number(null==(r=this.player.video)?void 0:r.clientWidth)/Number(e)||1,r=Math.min(1.2,Math.max(.6,r)),e=(this.player.dispatchEvent(new CustomEvent(bs.SUBTITLE_CONFIG_CHANGE,{detail:{config:Object.assign(Object.assign({},this.config),{multiplier:r})}})),r*(null!=t?t:18)+"px");e!==this.fontSize&&(this.fontSize=e,this.requestUpdate())},this.onConfigUpdated=e=>{this.logger.debug("Subtitle config updated",{config:e.detail.config,player:e.detail.player}),this.calculateFontSize()},this.onLoadedMetadata=()=>{var e,t;null!=(t=this.player.hlsVideo)&&t.video&&((t=this.logger.group("debug","Video metadata loaded")).message("Checking for active track",{hasActiveTrack:!!this.player.activeTrack,hasVideo:!(null==(e=this.player.hlsVideo)||!e.video)}),this.player.activeTrack&&(t.message("Setting up initial subtitle track",{trackKind:this.player.activeTrack.kind,trackLabel:this.player.activeTrack.label,trackLanguage:this.player.activeTrack.language}),this.setupCueChangeListener(this.player.activeTrack)),t.end())},this.onTrackChange=e=>{var t,r;this.currentCue!==e.detail.track&&((r=this.logger.group("info","Subtitle track changed")).message("Track details",{kind:null==(t=e.detail.track)?void 0:t.kind,label:null==(t=e.detail.track)?void 0:t.label,language:null==(t=e.detail.track)?void 0:t.language,mode:null==(t=e.detail.track)?void 0:t.mode}),this.cleanupTrackListeners(),e.detail.track?(r.message("Setting up new track listener",{trackLabel:e.detail.track.label}),this.setupCueChangeListener(e.detail.track)):(r.message("No track selected, clearing current cue"),this.currentCue=null),r.end())},this.cueChangeHandler=()=>{var e,t=this.player.activeTrack;t?(e=Array.from(t.activeCues||[])[0]||null)!==this.currentCue&&(this.logger.debug("Subtitle cue changed",{endTime:null===e?void 0:e.endTime,startTime:null===e?void 0:e.startTime,text:null===e?void 0:e.text,trackLabel:t.label,trackLanguage:t.language}),this.currentCue=e):this.currentCue=null}}connectedCallback(){super.connectedCallback(),this.logger.info("Subtitle component initialized",{componentName:bn.componentName,config:this.config,fontSize:this.fontSize,show:this.show}),this.player.addEventListener(bs.VIDEO_LOADEDMETADATA,this.onLoadedMetadata),this.player.addEventListener(bs.SUBTITLE_TRACK_CHANGE,this.onTrackChange),this.player.addEventListener(bs.PLAYER_RESIZE,this.calculateFontSize),this.player.addEventListener(bs.PLAYER_CONFIG_UPDATED,this.onConfigUpdated)}disconnectedCallback(){var e;this.logger.debug("Subtitle component disconnected",{componentName:bn.componentName,currentCue:null==(e=this.currentCue)?void 0:e.text,show:this.show}),super.disconnectedCallback(),this.player.removeEventListener(bs.VIDEO_LOADEDMETADATA,this.onLoadedMetadata),this.player.removeEventListener(bs.SUBTITLE_TRACK_CHANGE,this.onTrackChange),this.player.removeEventListener(bs.PLAYER_RESIZE,this.calculateFontSize),this.player.removeEventListener(bs.PLAYER_CONFIG_UPDATED,this.onConfigUpdated),this.player.dispatchEvent(new CustomEvent(bs.SUBTITLE_INACTIVE)),this.cleanupTrackListeners()}firstUpdated(){this.calculateFontSize()}render(){var e,t,r;return this.currentCue&&this.show&&!this.player.controllers.blockers.noneBlocker("played")?(r=this.player.config.subtitles,t=s({fontSize:this.fontSize,justifyContent:{center:"center",left:"flex-start",right:"flex-end"}[null!=(t=r.align)?t:"center"]||"center",textAlign:null!=(t=r.align)?t:"center"}),r=s({backgroundColor:null!=(e=r.backgroundColor)?e:"rgba(0, 0, 0, 0.7)",color:null!=(e=r.color)?e:"#FFFFFF"}),c`
${this.currentCue.text}
`):null}cleanupTrackListeners(){this.currentCue&&(this.logger.debug("Cleaning up track listeners",{hadCurrentCue:!!this.currentCue}),this.currentCue.removeEventListener("cuechange",this.cueChangeHandler))}setupCueChangeListener(e){this.logger.debug("Setting up cue change listener",{trackLabel:e.label,trackLanguage:e.language,trackMode:e.mode}),e.addEventListener("cuechange",this.cueChangeHandler)}},Kt=(h.componentName="Subtitle",h.styles=Ls,Es([Is({type:Object})],h.prototype,"config",void 0),Es([Is({reflect:!0,type:Boolean})],h.prototype,"show",void 0),Es([Cs()],h.prototype,"currentCue",void 0),h=bn=Es([ws("vturb-subtitles")],h),As=e``,ys=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.player.interface.setup({subtitles:{show:!this.player.config.subtitles.show}})}}render(){var e=s({color:this.player.config.style.foreground,fill:this.player.config.style.foreground});return c` `}}),Yt=(Kt.styles=As,Kt=ys([ws("vturb-subtitle-control")],Kt),Ss=e`.video-time{color:var(--style-foreground);display:flex;align-items:center!important;justify-content:center!important;padding-left:.5em;padding-right:.5em}.m-w-360 .video-time .video-time-total,.m-w-480 .video-time .video-time-total,.m-w-550 .video-time .video-time-total{display:none}.video-time .video-time-total{display:none}`,Ls=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{var t;this.videoTimeTotal.innerHTML=" / "+this.formatTime(null!=(t=null==(t=this.player.video)?void 0:t.duration)?t:0)},this.onTimeUpdate=e=>{this.videoTimeCurrent.textContent=this.formatTime(e.detail.time)}}connectedCallback(){super.connectedCallback(),this.player.addEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate),this.player.addEventListener(bs.VIDEO_LOADEDMETADATA,this.onLoadedMetadata)}disconnectedCallback(){var e;super.disconnectedCallback(),null!=(e=this.player)&&e.removeEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate),null!=(e=this.player)&&e.removeEventListener(bs.VIDEO_LOADEDMETADATA,this.onLoadedMetadata)}formatTime(e){e=Math.max(0,e);return Math.floor(e/60)+":"+Math.floor(e%60).toString().padStart(2,"0")}render(){return c`
00:00 / --:--
`}firstUpdated(e){var t;this.onTimeUpdate({detail:{time:null!=(t=null==(t=this.player.video)?void 0:t.currentTime)?t:0}})}}),d=(Yt.styles=Ss,Ls([Ps(".video-time-current")],Yt.prototype,"videoTimeCurrent",void 0),Ls([Ps(".video-time-total")],Yt.prototype,"videoTimeTotal",void 0),Yt=Ls([ws("vturb-video-time")],Yt),Es=e`#player .volume{position:relative}#player .volume__control{position:absolute;padding:1.125em .5em;background:var(--style-background-opacity);bottom:100%;cursor:pointer;visibility:hidden;transition:opacity .2s ease;width:100%;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;opacity:0;box-sizing:border-box;height:7em}#player .volume__control range-slider{width:1.5em;height:5em;--slider-height:0.125em;--thumb-diameter:0.625em;--slider-background:var(--style-foreground-50);--slider-value-color:var(--style-foreground);--thumb-color:var(--style-foreground)}#player .volume__button-icon{width:1.5em;height:100%;fill:#fff;display:none;align-items:center;justify-content:center}#player .volume.in-change .volume__button,#player .volume:not(.mobile):hover .volume__button{padding-right:.625em}#player .volume.in-change .volume__control,#player .volume:not(.mobile):hover .volume__control{visibility:visible;opacity:1;overflow:hidden}`,As=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{e.preventDefault(),e.stopPropagation(),this.volumeChangeStarted&&(this.player.controllers.bar.show(),this.player.controls.volume(this.Slider.value))},this.onVolumeChange=e=>{this.updateVolume(),this.requestUpdate()},this.startVolumeChange=e=>{this.volumeChangeStarted=!0,this.doc.addEventListener("mouseup",this.stopVolumeChange),this.doc.addEventListener("touchend",this.stopVolumeChange),this.player.controllers.bar.dispatchCloser()},this.stopVolumeChange=()=>{this.volumeChangeStarted=!1,this.doc.removeEventListener("mouseup",this.stopVolumeChange),this.doc.removeEventListener("touchend",this.stopVolumeChange)},this.toggleMute=e=>{this.player.muted||this.currentVolume<=.05?this.player.controls.unmute():this.player.controls.mute(),this.player.controllers.bar.show(),this.updateVolume()}}get currentVolume(){var e;return null!=(e=null==(e=this.player.video)?void 0:e.volume)?e:0}connectedCallback(){super.connectedCallback(),this.player.addEventListener(bs.VIDEO_VOLUMECHANGE,this.onVolumeChange)}disconnectedCallback(){var e;super.disconnectedCallback(),null!=(e=this.player)&&e.removeEventListener(bs.VIDEO_VOLUMECHANGE,this.onVolumeChange)}firstUpdated(){this.updateVolume()}render(){return c`
${Ds(!_s(),()=>c`
{e.stopPropagation()}} @mousedown=${this.startVolumeChange} @touchstart=${this.startVolumeChange} >
`)}
`}updateVolume(){0===this.currentVolume||this.player.muted?(this.Volume3.style.display="none",this.Volume2.style.display="none",this.Volume1.style.display="none",this.VolumeMute.style.display="flex"):(this.currentVolume<.25?(this.Volume3.style.display="none",this.Volume2.style.display="none",this.Volume1.style.display="flex"):(this.currentVolume<.75?(this.Volume3.style.display="none",this.Volume2.style.display="flex"):(this.Volume3.style.display="flex",this.Volume2.style.display="none"),this.Volume1.style.display="none"),this.VolumeMute.style.display="none")}}),Wt=(d.styles=Es,As([Ps("range-slider")],d.prototype,"Slider",void 0),As([Ps(".volume__button-icon--1")],d.prototype,"Volume1",void 0),As([Ps(".volume__button-icon--2")],d.prototype,"Volume2",void 0),As([Ps(".volume__button-icon--3")],d.prototype,"Volume3",void 0),As([Ps(".volume__button")],d.prototype,"VolumeButton",void 0),As([Cs()],d.prototype,"volumeChangeStarted",void 0),As([Ps(".volume__button-icon--mute")],d.prototype,"VolumeMute",void 0),d=As([ws("vturb-volume")],d),ys=e`.controls{position:absolute;width:100%;bottom:0;left:0;opacity:0;transition:opacity var(--base-transition),transform var(--base-transition);transform:translateY(var(--control-translate-y));z-index:var(--control-index);box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--control-gap-vertical)}.controls--progress-bar{justify-content:flex-start;background:var(--style-background-opacity)}.controls vturb-forward,.controls vturb-fullscreen,.controls vturb-progress-bar,.controls vturb-rewind,.controls vturb-smallplay,.controls vturb-speed-control,.controls vturb-subtitle-control,.controls vturb-video-time,.controls vturb-volume{height:100%;display:flex;align-items:center;justify-content:center}.controls vturb-forward:hover,.controls vturb-fullscreen:hover,.controls vturb-progress-bar:hover,.controls vturb-rewind:hover,.controls vturb-smallplay:hover,.controls vturb-speed-control:hover,.controls vturb-subtitle-control:hover,.controls vturb-video-time:hover,.controls vturb-volume:hover{opacity:1;transition:opacity calc(var(--base-transition-duration)/2.2) var(--base-transition-cubic)}.controls vturb-forward>:not(.no-size),.controls vturb-fullscreen>:not(.no-size),.controls vturb-progress-bar>:not(.no-size),.controls vturb-rewind>:not(.no-size),.controls vturb-smallplay>:not(.no-size),.controls vturb-speed-control>:not(.no-size),.controls vturb-subtitle-control>:not(.no-size),.controls vturb-video-time>:not(.no-size),.controls vturb-volume>:not(.no-size){height:calc(var(--control-padding)*2 + var(--control-button-size));display:flex;align-items:stretch;position:relative}.controls button{background:rgba(0,0,0,0);border:none;cursor:pointer;padding:var(--control-padding);padding-block:var(--control-padding);padding-inline:var(--control-padding);display:flex;justify-content:center;align-items:center;color:var(--style-foreground);fill:var(--style-foreground);opacity:.75;transition:opacity calc(var(--base-transition-duration)/2.2) var(--base-transition-cubic);font-size:1em}.controls button:hover{opacity:1;background:var(--style-hover-background)}.controls button,.controls button *{pointer-events:auto}.controls svg{width:var(--control-button-size);height:var(--control-button-size);background:rgba(0,0,0,0);color:var(--style-foreground);fill:var(--style-foreground)}.controls__first{display:flex;justify-content:space-between;flex-direction:row;align-items:flex-end;gap:var(--control-gap-horizontal)}.controls__first--left,.controls__first--right{display:flex;justify-content:flex-start;flex-direction:row;align-items:stretch;position:relative}.controls:not(.controls--progress-bar) .controls__first--left,.controls:not(.controls--progress-bar) .controls__first--right{background:var(--style-background-opacity);border-radius:var(--control-border-radius)}.m-w-360:not(.has-fakebar) .controls:not(.controls--progress-bar) .controls__first--left,.m-w-360:not(.has-fakebar) .controls:not(.controls--progress-bar) .controls__first--right,.m-w-480:not(.has-fakebar) .controls:not(.controls--progress-bar) .controls__first--left,.m-w-480:not(.has-fakebar) .controls:not(.controls--progress-bar) .controls__first--right,.m-w-550:not(.has-fakebar) .controls:not(.controls--progress-bar) .controls__first--left,.m-w-550:not(.has-fakebar) .controls:not(.controls--progress-bar) .controls__first--right{background:rgba(0,0,0,0);border-radius:0}.controls.controls--progress-bar .controls__first--left{flex:1}.controls__first--left vturb-progress-bar{flex:1;margin-left:var(--control-padding)}.controls__menu-button--active{background:var(--style-hover-background)!important}.m-w-360:not(.has-fakebar) .controls .controls__first,.m-w-480:not(.has-fakebar) .controls .controls__first,.m-w-550:not(.has-fakebar) .controls .controls__first{background:var(--style-background-opacity)}.has-fakebar .controls.bottom-controls-visible{box-sizing:border-box;background:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0));padding:1.4em .8em calc(var(--fakebar-height,0) + .4em)}.has-fakebar .controls.bottom-controls-visible .controls__first .controls__first--left,.has-fakebar .controls.bottom-controls-visible .controls__first .controls__first--right{background:rgba(0,0,0,0)!important;gap:.5em}.has-fakebar .controls.bottom-controls-visible .controls__first .controls__first--left button,.has-fakebar .controls.bottom-controls-visible .controls__first .controls__first--right button{opacity:1;border-radius:var(--control-border-radius)}.has-fakebar .controls.bottom-controls-visible .controls__first .controls__first--left button.active,.has-fakebar .controls.bottom-controls-visible .controls__first .controls__first--right button.active{background:var(--style-background)}.has-fakebar .controls.bottom-controls-visible .controls__first .controls__first--left button:hover,.has-fakebar .controls.bottom-controls-visible .controls__first .controls__first--right button:hover{background:var(--style-background-opacity);transition:background calc(var(--base-transition-duration)/2.2) var(--base-transition-cubic)}.controls__inner{position:absolute;width:100%;top:50%;left:0;transform:translateY(-50%);align-items:center;justify-content:space-around;gap:var(--control-gap-horizontal);opacity:0;transition:opacity var(--base-transition),transform var(--base-transition);transform:translateY(-30%);pointer-events:none!important;display:flex}.controls__inner,.controls__inner *{pointer-events:none!important}.controls__inner--center,.controls__inner--left,.controls__inner--right{width:33%;display:flex;justify-content:center;align-items:center}.m-w-360 .controls__inner{font-size:10px}.m-w-480 .controls__inner{font-size:12px}.m-w-550 .controls__inner{font-size:14px}.m-w-640 .controls__inner{font-size:16px}.m-w-768 .controls__inner{font-size:18px}.m-w-1024 .controls__inner{font-size:20px}.m-w-1280 .controls__inner{font-size:22px}.m-w-1440 .controls__inner{font-size:24px}.m-w-1600 .controls__inner{font-size:26px}.m-w-1920 .controls__inner{font-size:28px}.controls__inner button{background:rgba(0,0,0,.5);border:none;border-radius:100%;cursor:pointer;padding:var(--control-mobile-button-padding);padding-block:var(--control-mobile-button-padding);padding-inline:var(--control-mobile-button-padding);display:inline-flex;justify-content:center;align-items:center;color:#fff;fill:#fff;opacity:.75;transition:opacity calc(var(--base-transition-duration)/2.2) var(--base-transition-cubic);font-size:1em}.is-mobile .controls__inner button:active{animation:mobile-click-feedback var(--base-transition-duration) var(--base-transition-cubic)}@keyframes mobile-click-feedback{0%{box-shadow:0 0 0 0 hsla(0,0%,100%,.8)}70%{box-shadow:0 0 0 .9375em hsla(0,0%,100%,0)}100%{box-shadow:0 0 0 0 hsla(0,0%,100%,0)}}#player:not(.is-mobile) .controls__inner button:hover{opacity:1;background:var(--style-dark-hover-background)}.controls__inner button,.controls__inner button *{pointer-events:auto}.controls__inner button svg{width:var(--control-mobile-button-icon-size);height:var(--control-mobile-button-icon-size);background:rgba(0,0,0,0);color:#fff;fill:#fff}.controls__inner .featured button{padding:var(--control-mobile-button-featured-padding);padding-block:var(--control-mobile-button-featured-padding);padding-inline:var(--control-mobile-button-featured-padding)}.controls__inner .featured button svg{width:var(--control-mobile-button-featured-icon-size);height:var(--control-mobile-button-featured-icon-size)}.show-controls .controls{opacity:1;transform:translateY(0)}.show-controls .controls__inner{opacity:1;transform:translateY(calc(-50% - (var(--control-padding) * 2 + 1.5rem)/ 2))}.show-controls .controls__inner,.show-controls .controls__inner *{pointer-events:all!important}`,function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.player.dispatchEvent(new CustomEvent(bs.CONTROL_BAR_CLOSER)),e.stopPropagation(),t||e.preventDefault()}),this.showMenu=!1,this.controlsActiveHandler=()=>this.sendEvents(!0),this.controlsInactiveHandler=()=>this.sendEvents(!1)}get allowProgressBar(){return this.player.config.style.progressBar}get showCaptions(){return this.player.config.subtitles.active&&this.player.config.style.captions&&0{e=e.filter(e=>e.visible).reduce((e,t,r,i)=>{r=r===i.length-1,i=0e.order-t.order),rightControls:e.rightControls.sort((e,t)=>e.order-t.order),leftUsedSpace:e.leftUsedSpace,controlsSize:e.leftControls.length+e.rightControls.length}})([{element:Ds(e.smallPlay,()=>c``),visible:e.smallPlay,space:10,order:1},{element:Ds(e.rewind&&!this.allowMenuDisplay,()=>c``),visible:e.rewind&&!this.allowMenuDisplay,space:10,order:2},{element:Ds(e.videoTime,()=>c``),visible:e.videoTime,space:10,order:3},{element:Ds(this.allowProgressBar,()=>c``),visible:this.allowProgressBar,space:this.allowMenuDisplay?70:60,order:5},{element:Ds(e.volume,()=>c``),visible:e.volume,space:10,order:4},{element:Ds(this.showCaptions,()=>c``),visible:this.showCaptions,space:10,preferRight:!0,order:6},{element:Ds(e.speed,()=>c``),visible:e.speed,space:10,preferRight:!0,order:7},{element:Ds(e.fullscreen,()=>c``),visible:e.fullscreen,space:10,preferRight:!0,order:8}],this.allowMenuDisplay)}get isMenuVisible(){var{rightControls:e,leftUsedSpace:t}=this.controlsOptions;return 1
${Ds(e.rewind,()=>c``,()=>c` `)}
 
${Ds(e.forward,()=>c``,()=>c` `)}
${Ds(!this.showMenu,()=>t.map(e=>e.element))}
${Ds(!this.allowMenuDisplay||!this.isMenuVisible,()=>r.map(e=>e.element))} ${Ds(this.allowMenuDisplay&&this.isMenuVisible,()=>this.renderMenu(r))}
`}renderMenu(e){return c` ${Ds(this.showMenu,()=>e.map(e=>e.element))} `}sendEvents(r){var e=this.player.config.style,e={forward:e.forward,fullscreen:e.fullscreen,progressBar:e.progressBar,rewind:e.rewind,smallplay:e.smallPlay,speed:e.speed,videoTime:e.videoTime,volume:e.volume},e=Object.entries(e).reduce((e,t)=>Object.assign(Object.assign({},e),{[t[0]]:t[1]&&r}),{});this.player.dispatchEvent(new CustomEvent(bs.CONTROLS_ITEMS,{detail:{items:e}}))}createRenderRoot(){return this}};qt.componentName="Controls",qt.reRenderOn=[bs.PLAYER_RESIZE],qt.styles=[ys,Vt.styles,i.styles,Nt.styles,Bt.styles,Ut.styles,Yt.styles,d.styles,o.styles,Kt.styles],Wt([Cs()],qt.prototype,"showMenu",void 0),qt=Wt([ws("vturb-controls")],qt);class Pu{constructor(e,t=(e,t)=>e){this.win=window,this.updater=t,this.logger=e,this.setEvents()}findClickableParent(e){try{for(;e;){if(["A","BUTTON","INPUT"].includes(e.tagName)){if("A"===e.tagName&&e.hasAttribute("href"))return e;if(("BUTTON"===e.tagName||"INPUT"===e.tagName)&&"submit"===e.type&&e.form)return e}e=e.parentElement}return null}catch(e){return this.logger.error("Error finding clickable parent",e),null}}handleFormElement(e){var t=e.form;t&&(t.action?t.action=this.injectIntoURL(t.action,e):this.logger.warn("Form element has no action",{element:e}))}handleLinkElement(t){var e=t.getAttribute("href");if(e)try{var r=window.location.href.split("#")[0];e.split("#")[0]===r||e.startsWith("#")||e.startsWith("javascript:")||(t.href=this.injectIntoURL(e,t))}catch(e){this.logger.warn(`Skipping link element due to error: ${e}, element: `+t)}}injectIntoURL(t,e){try{return this.updater(t,e)}catch(e){return this.logger.warn("Error updating URL: "+t,{error:e}),t}}setEvents(){let t=e=>{try{var t=this.findClickableParent(e.target);t&&!this.shouldIgnoreElement(t)&&("A"===t.tagName?this.handleLinkElement(t):"BUTTON"!==t.tagName&&"INPUT"!==t.tagName||"submit"!==t.type||this.handleFormElement(t))}catch(e){this.logger.error("Error setting events",e)}};["mousedown","touchstart","mouseover"].forEach(e=>{this.win.addEventListener(e,t)})}shouldIgnoreElement(e){e=ya(e,".smartplayer-ignore-click-event");return null!=e}}let Xt=(e=0)=>5*Math.floor(e/5),Qt=["cmc_redir"];class Du extends Ks{constructor(){super(...arguments),this.baseSearchParams=new URLSearchParams,this.currentHeadline=null,this.currentSmartAutoPlay=null,this.currentTurboSpeed=null,this.changeHeadline=e=>{this.currentHeadline=""+e.detail.number},this.changeSmartAutoPlay=e=>{this.currentSmartAutoPlay=""+e.detail.autoplay.number},this.changeTurboSpeed=e=>{this.currentTurboSpeed=e.detail.speed},this.dispatchMessageToParent=()=>{this.player.dispatchEvent(new CustomEvent(bs.CONVERSION_TRACKING_UPDATE,{detail:{key:this.key}}))},this.saveTime=e=>{this.player.store.set(this.lastTimeKey,null!=(e=null!=e?e:null==(e=this.player.video)?void 0:e.currentTime)?e:0)},this.redirectionParamUpdater=(t,r)=>{try{this.logger.debug("Redirect URL Param Updater",{key:r,base:t.toString()});let e=t.searchParams.get(r);e&&((e.includes("%2F")||e.includes("%3A"))&&(e=decodeURIComponent(e)),new URL(e),t.searchParams.set(r,encodeURIComponent(this.urlUpdater(e))))}catch(e){this.logger.error("Error updating URL",{error:e})}},this.urlUpdater=(r,e)=>{try{let t=new URL(r,window.location.href);return this.config.conversion.forEach(e=>{t.searchParams.set(e,this.key)}),Qt.forEach(e=>this.redirectionParamUpdater(t,e)),this.logger.debug("URL Updater",{url:t.toString()}),t.toString()}catch(e){return this.logger.error("Error updating URL",{error:e}),r}}}get key(){let e,t,r="",i="",s="";return this.currentTurboSpeed&&(r="_t-"+parseInt(""+10*this.currentTurboSpeed,10)),null!=(e=this.config.headlines)&&e.active&&this.currentHeadline&&(i="_h-"+this.currentHeadline),this.currentSmartAutoPlay&&(s="_s-"+this.currentSmartAutoPlay),`v3_${null==(t=this.player.analytics)?void 0:t.sessionId}_${this.config.id}_`+this.lastTime+r+i+s}get lastTime(){var e=this.player.store.get(this.lastTimeKey,0);return 0{var e;this.logger.debug("ConversionTrackingController: player ready"),null!=(e=this.config.conversion)&&e.length&&(this.logger.info("ConversionTrackingController: host connected, conversion tracking active"),this.setup(),this.player.dispatchEvent(new CustomEvent(bs.CONVERSION_TRACKING_ENABLED)))})}hostDisconnected(){this.logger.debug("ConversionTrackingController: host disconnected"),this.player.dispatchEvent(new CustomEvent(bs.CONVERSION_TRACKING_DISABLED))}init(){this.logger.debug("ConversionTrackingController: init"),this.player.dispatchEvent(new CustomEvent(bs.URL_INJECTION,{detail:{priority:Js.HIGH,updater:this.urlUpdater}}))}setup(){this.logger.debug("ConversionTrackingController: setup",this.key),this.player.addEventListener(bs.HEADLINE_CHANGED,this.changeHeadline),this.player.addEventListener(bs.SMARTAUTOPLAY_SELECTED,this.changeSmartAutoPlay),this.player.addEventListener(bs.TURBO_SPEED_CHANGED,this.changeTurboSpeed),this.player.addEventListener(bs.VIDEO_TIMEUPDATE_MS,()=>{var e;this.saveTime(Xt(null!=(e=null==(e=this.player.video)?void 0:e.currentTime)?e:0))}),this.player.addEventListener(bs.VIDEO_ENDED,()=>{var e;null!=(e=this.player.video)&&e.duration&&(this.saveTime(Math.floor(this.player.video.duration)),this.dispatchMessageToParent())}),this.urlUpdaterEngine=new Pu(this.logger,(e,t)=>this.player.urlUpdater(e,t)),this.dispatchMessageToParent()}}Du.controllerName="ConversionTrackingController",Du.requirements=[({ready:e,video:t})=>!!e&&!!t];var En,Tn,Ss=e`.fakebar{left:0;width:0%;bottom:0;height:var(--fakebar-height,10px);opacity:.8;z-index:var(--fakebar-index,100);position:absolute;transition:width .1s var(--base-transition-cubic,ease);background-color:var(--fakebar-background-color,#fff)}`,Ls=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.visibility=!1;var e=null!=(e=null==(e=this.player.video)?void 0:e.duration)?e:0,e=this.player.video.currentTime/e||0;this.setProgress(e)},this.getVideoDuration=()=>{var e;return null!=(e=null==(e=this.player.video)?void 0:e.duration)?e:0},this.onPause=()=>{this.logger.info("Fakebar onPause"),this.player.addEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate),this.timer&&(clearInterval(this.timer),this.timer=null)},this.onPlay=()=>{this.logger.info("Fakebar onPlay"),this.player.removeEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate),this.timer||(this.timer=setInterval(this.sync,40))},this.onTimeUpdate=()=>{this.logger.info("Fakebar onTimeUpdate"),this.sync()},this.setProgress=e=>{e=_n(this,En,"f").call(this,e);this.progress=e,this.player.dispatchEvent(new CustomEvent(bs.FAKEBAR_PROGRESS,{detail:{progress:e}}))},this.sync=()=>{var e;this.player.controllers.blockers.noneBlocker("played")||!this.player.video||(e=this.player.video.duration||0,(e=(this.player.video.currentTime||0)/e||0)===1/0)?(this.setProgress(0),this.visibility=!1):(this.visibility=!0,this.setProgress(e),this.player.dispatchEvent(new CustomEvent(bs.FAKEBAR_WIDTH,{detail:{width:e}})))},En.set(this,e=>100*Math.pow(1-(e-=1)*e,1/this.alpha)),Tn.set(this,()=>{var e=this.player.config.fakeBar.alpha;this.alpha=Math.min(3,Math.max(2,e))})}connectedCallback(){var e;super.connectedCallback(),this.logger.info("connectedCallback"),_n(this,Tn,"f").call(this),null!=(e=this.player.player)&&e.classList.add("with-fakebar"),this.player.controllers.blockers.noneBlocker("played")?this.player.addEventListener(bs.VIDEO_LOADEDDATA,this.defaultConfig):this.timer=setInterval(this.sync,40),this.player.dispatchEvent(new CustomEvent(bs.FAKEBAR_ACTIVE)),this.player.addEventListener(bs.VIDEO_PLAY,this.onPlay),this.player.addEventListener(bs.VIDEO_PAUSE,this.onPause)}disconnectedCallback(){this.logger.info("disconnectedCallback"),super.disconnectedCallback(),this.player.dispatchEvent(new CustomEvent(bs.FAKEBAR_INACTIVE)),this.timer&&(clearInterval(this.timer),this.timer=null)}render(){return this.visibility?c`
`:null}},Zt=(En=new WeakMap,Tn=new WeakMap,f.componentName="Fakebar",f.styles=[Ss],Ls([Ps(".fakebar")],f.prototype,"fakebar",void 0),Ls([Cs()],f.prototype,"progress",void 0),Ls([Cs()],f.prototype,"visibility",void 0),f=Ls([ws("vturb-fakebar")],f),function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{var e=null==(e=this.player.player)?void 0:e.clientWidth;e&&(this.style.fontSize=e<768?"14px":"18px")}}static shouldLoadHeadlines(e){var t;return(null==(t=e.headlines)?void 0:t.active)&&0<(null==(t=e.headlines)?void 0:t.items.length)}connectedCallback(){var e;super.connectedCallback(),this.player.isIframe&&(this.style.display="none"),this.headline=this.getCurrentHeadline(),!this.player.config.preview&&this.headline&&this.player.controllers.analytics.event("headlineview",{headline_number:this.headline.number,player_id:this.player.config.id,session_id:null==(e=this.player.analytics)?void 0:e.sessionId}),this.player.dispatchEvent(new CustomEvent(bs.HEADLINE_CHANGED,{detail:{headline:this.headline,number:this.headline.number}})),this.player.addEventListener(bs.PLAYER_RESIZE,this.onPlayerResize),this.player.addEventListener(bs.PLAYER_READY,this.onPlayerResize,{once:!0})}disconnectedCallback(){this.player.removeEventListener(bs.PLAYER_RESIZE,this.onPlayerResize)}importFontFamily(e){var t,r,i=null==(i=e.typography)?void 0:i.family.toLowerCase().replace(/\W+/g,"-");t=document,i="vturb-headline-font-"+i,e=null==(e=e.typography)?void 0:e.embedLink,t.getElementById(i)||((r=t.createElement("link")).id=i,r.setAttribute("href",e),r.setAttribute("rel","stylesheet"),r.setAttribute("type","text/css"),t.head.appendChild(r))}render(){if(this.headline&&"none"!==this.headline.name)return this.player.isIframe&&this.renderIframe(),"html"===this.headline.type?this.renderHtml():this.renderImage()}renderHtml(){this.importFontFamily(this.headline);var e=this.headline,t=` ${Jt} h1 { margin: 0; } .headline-content { ${e.typography?` font-family: '${null!=(t=null==(t=e.typography)?void 0:t.family)?t:"inherit"}'; font-size: ${(null!=(t=null==(t=e.typography)?void 0:t.size)?t:16)/18}em; letter-spacing: ${null!=(t=null==(t=e.typography)?void 0:t.letterSpacing)?t:0}px; line-height: ${null!=(t=null==(t=e.typography)?void 0:t.lineHeight)?t:100}%; `:""} ${e.layout?` width: ${null!=(t=null==(t=e.layout)?void 0:t.width)?t:100}%; margin: ${e.layout.margin.values.map(e=>e+"px").join(" ")}; `:""} } `,r=dn(e.html,this.logger);return c`
`}renderIframe(){return Sn(this,void 0,void 0,function*(){yield this.updateComplete;var e=null==(e=this.headlineStyle)?void 0:e.innerHTML,t=null==(t=this.headlineContent)?void 0:t.innerHTML;if(e&&t)return this.player.dispatchEvent(new CustomEvent(bs.HEADLINE_RENDERED,{detail:{headline:this.headline,html:t,style:e}})),null})}renderImage(){var e=this.headline,t=s({backgroundColor:"transparent",maxWidth:"100%"});return c`
${e.name}
`}getCurrentHeadline(){var[e,t]=mn(this.player.config.headlines.items,this.player.config.headlines.items[0],{identifierKey:"number",storageKey:"headline-"+this.player.config.id,store:this.player.store});return this.logger.group("debug",`Headline ${e.number} selected`).message("details",t).end(),e}},er=(p.componentName="Headline",p.styles=e` :host { display: block; font-family: inherit; text-align: left; width: 100%; font-size: 18px; color: rgba(0, 0, 0, 1); } `,Zt([Cs()],p.prototype,"headline",void 0),Zt([Ps("div")],p.prototype,"headlineContent",void 0),Zt([Ps("style")],p.prototype,"headlineStyle",void 0),p=Zt([ws("vturb-headline")],p),function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.confirmDestination(e)&&(this.projected=e.detail.content||[],e.detail.onMount)&&e.detail.onMount(this)}}confirmDestination(e){return this.name||console.warn("This destination has not been named."),e.detail.destination===this.name&&(e.stopPropagation(),!0)}connectedCallback(){super.connectedCallback(),document.addEventListener("portal-open",this.updatePortalContent,!0),document.addEventListener("portal-close",this.updatePortalContent,!0)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("portal-open",this.updatePortalContent,!0),document.removeEventListener("portal-close",this.updatePortalContent,!0)}render(){return c`${this.projected}`}createRenderRoot(){return this}},rr=(tr.styles=[e` :host { } `],er([Is({type:String})],tr.prototype,"name",void 0),er([Is({type:Array})],tr.prototype,"projected",void 0),tr=er([ws("portal-destination")],tr),function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3 `}};function An(e,t){return new CustomEvent(e,{composed:!0,detail:t})}rr([Is({type:String})],ir.prototype,"destination",void 0),rr([Is({type:Function})],ir.prototype,"onMount",void 0),rr([Is({type:String})],ir.prototype,"reference",void 0),ir=rr([ws("portal-entrance")],ir);var Es=e`.blocked{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1000;overflow:hidden;background-color:#202020;box-shadow:inset 0 0 160px 0 #000}.blocked__logo{position:absolute;width:100%;height:100%}.blocked__logo svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:80%;width:80%;opacity:.035}.blocked__logo svg path{fill:#fff}.blocked__content{top:50%;left:50%;width:80%;position:absolute;max-width:32em;text-align:center;transform:translate(-50%,-50%)}.blocked__msg{color:#ccc;text-align:center;font-size:1.2em;text-shadow:0 2px 0 #000,0 3px 3px #000}.blocked__button{color:#fff;margin:0 auto;padding:.7em 1.5em;display:inline-block;font-size:1em;margin-top:1.2em;background:#f1582d;font-weight:600;border-radius:5px;text-decoration:none;transition:transform .2s}.blocked__button:hover{transform:scale(1.05)}@media(max-width:480px){.blocked__msg{font-size:1em}.blocked__button{font-size:.8em}}`,As=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3wn(this,void 0,void 0,function*(){var e;this.player.removeEventListener(bs.PLAYER_READY,this.check);let t={domain:yield this.domain(),m3u8_path:null==(e=this.player.hlsVideo)?void 0:e.m3u8,player_id:this.player.config.id};this.logger.group("debug","details to request").message("domain",t.domain).message("m3u8_path",t.m3u8_path).message("player_id",t.player_id).end(),fetch(this.URL,{body:JSON.stringify(t),method:"POST"}).then(e=>e.status).then(e=>{try{this.exceptionByStatus(e),this.player.dispatchEvent(new CustomEvent(bs.LICENSE_ALLOWED))}catch(e){e instanceof Error&&"LicenseError"===e.name&&(this.logger.warn(`license error(${e.status}): `+e.message,e),this.error=e,this.player.dispatchEvent(new CustomEvent(bs.LICENSE_DENIED,{detail:e})),this.player.changeLicense(!1))}}).catch(e=>{this.logger.network("License response error",{request:{url:this.URL,method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},body:t},response:e instanceof Response?e:void 0})})})}connectedCallback(){super.connectedCallback(),this.player.addEventListener(bs.PLAYER_READY,this.check,{once:!0})}disconnectedCallback(){super.disconnectedCallback(),this.player.removeEventListener(bs.PLAYER_READY,this.check)}domain(){return wn(this,void 0,void 0,function*(){var e=ue({search:location.search,logger:this.logger});return this.logger.debug("checking domain",{isIframe:this.player.isIframe,locationFromVl:null==e?void 0:e.hostname,location:location}),(this.player.isIframe&&null!=e&&e.hostname?e:location).hostname})}exceptionByStatus(e){switch(e){case 401:throw new xu(n("license.blocked.by_rule"),401);case 403:throw new xu(n("license.blocked.payment_open"),403);case 406:throw new xu(n("license.blocked.domain_not_allowed"),406);case 451:throw new xu(n("license.blocked.indefinite_block"),451)}}render(){if(this.error)return c` `}};function*Ln(t,r){if(void 0!==t){let e=0;for(var i of t)yield r(i,e++)}}sr.componentName="License",sr.styles=[Es],As([Cs()],sr.prototype,"error",void 0),sr=As([ws("vturb-license")],sr);let ar=(e,t)=>{var r,i,s=e._$AN;if(void 0===s)return!1;for(let e of s)null!=(i=(r=e)._$AO)&&i.call(r,t,!1),ar(e,t);return!0},nr=e=>{let t,r;for(;void 0!==(t=e._$AM)&&((r=t._$AN).delete(e),e=t,0===(null==r?void 0:r.size)););},or=r=>{for(let t;t=r._$AM;r=t){let e=t._$AN;if(void 0===e)t._$AN=e=new Set;else if(e.has(r))break;e.add(r),lr(t)}};function kn(e){void 0!==this._$AN?(nr(this),this._$AM=e,or(this)):this._$AM=e}function Rn(e,t=!1,r=0){var i=this._$AH,s=this._$AN;if(void 0!==s&&0!==s.size)if(t)if(Array.isArray(i))for(let e=r;e{e.type==Et.CHILD&&(null==e._$AP&&(e._$AP=Rn),null==e._$AQ)&&(e._$AQ=kn)};class Ou extends Cu{constructor(){super(...arguments),this._$AN=void 0}_$AT(e,t,r){super._$AT(e,t,r),or(this),this.isConnected=e._$AU}_$AO(e,t=!0){var r;e!==this.isConnected&&((this.isConnected=e)?null!=(r=this.reconnected)&&r.call(this):null!=(r=this.disconnected)&&r.call(this)),t&&(ar(this,e),nr(this))}setValue(e){var t;void 0===this._$Ct.strings?this._$Ct._$AI(e,this):((t=[...this._$Ct._$AH])[this._$Ci]=e,this._$Ct._$AI(t,this,0))}disconnected(){}reconnected(){}}class Mu{}let hr=new WeakMap,dr=Tt(class extends Ou{render(e){return l}update(e,[t]){var r=t!==this.G;return r&&void 0!==this.G&&this.ot(void 0),!r&&this.rt===this.lt||(this.G=t,this.dt=null==(r=e.options)?void 0:r.host,this.ot(this.lt=e.element)),l}ot(t){if("function"==typeof this.G){var r=null!=(r=this.dt)?r:globalThis;let e=hr.get(r);void 0===e&&(e=new WeakMap,hr.set(r,e)),void 0!==e.get(this.G)&&this.G.call(this.dt,void 0),e.set(this.G,t),void 0!==t&&this.G.call(this.dt,t)}else this.G.value=t}get rt(){var e;return"function"==typeof this.G?null==(e=hr.get(null!=(e=this.dt)?e:globalThis))?void 0:e.get(this.G):null==(e=this.G)?void 0:e.value}disconnected(){this.rt===this.lt&&this.ot(void 0)}reconnected(){this.ot(this.lt)}}),cr=["borderRadius","borderWidth","fontSize","height","width","left","top"],ur=class{constructor(e){var t;this.options=e,this.container=null!=(t=e.container)?t:e.player.video,this.video=this.options.player.video,this.els=this.getElementsToScale(e.elements)}getElementsToScale(e){return Array.prototype.map.call(e,t=>{let r={domEel:t,original:{}};return cr.forEach(e=>{r.original[e]=parseInt(t.style[e]||"0",10)}),r})}ratio(){return Math.min(this.video.clientWidth/this.options.width,this.video.clientHeight/this.options.height)}repositionElement(e,t){var r=this.container.clientWidth/this.options.width,i=this.container.clientHeight/this.options.height;e.domEel.style.left=e.original.left*r+(e.original.width*r/2-e.original.width*t/2)+"px",e.domEel.style.top=e.original.top*i+(e.original.height*i/2-e.original.height*t/2)+"px"}scale(){this.scaleBy(this.ratio())}scaleBy(t){this.container.style.width=this.options.width*t+"px",this.container.style.height=this.options.height*t+"px",this.container.style.left=(this.video.clientWidth-this.container.clientWidth)/2+"px",this.container.style.top=(this.video.clientHeight-this.container.clientHeight)/2+"px",this.els.forEach(e=>{this.scaleElement(e,t)})}scaleElement(r,i){let s=["top","left"];Object.entries(r.original).forEach(([e,t])=>{s.includes(e)||(r.domEel.style[e]=t*i+"px")}),this.repositionElement(r,i)}},fr=class{constructor(e,t){this.options=e,this.logger=t,this.logger.group("trace","RichElement.MaxScaleFactorCalculator.constructor").message("options",e).end(),this.maxFactor=this.calculateMaxFactor(),this.proportionalScale=this.calcElementsProportionalScale(),this.multiplier=(1-this.proportionalScale)/5;t=this.options.width{t=this.lowerBorderDistance(t);return Math.min(e,t)},1/0)}calcElementsProportionalScale(){var{bottom:e,left:t,right:r,top:i}=this.maxBorderDistanceOfAllElements(),r=Math.max((r-t)/this.options.width,(e-i)/this.options.height);return this.logger.group("trace","RichElement.MaxScaleFactorCalculator.calcElementsProportionalScale").message("result",r).end(),r}calculateMaxFactor(){var e=this.bestElementToCalculate(),t=1/(2*e/this.options.width-1)*-1,r=1/(2*e/this.options.height-1)*-1;return this.logger.group("trace","RichElement.MaxScaleFactorCalculator.calculateMaxFactor").message("distance",e).message("distanceWidth",t).message("distanceHeight",r).message("maxFactor",Math.max(t,r)).message("proportionalScale",this.proportionalScale).end(),Math.max(t,r)}lowerBorderDistance(e){var{height:t,width:r}=this.options,e=this.mountReactFromRichElement(e);return this.logger.group("trace","RichElement.MaxScaleFactorCalculator.lowerBorderDistance").message("rect",e).end(),Math.min(e.left,e.top,r-e.right,t-e.bottom)}maxBorderDistanceOfAllElements(){var e=this.options.elements.map(e=>this.mountReactFromRichElement(e)),t=e.map(e=>e.left),r=e.map(e=>e.right),i=e.map(e=>e.top);return{bottom:e.map(e=>e.bottom).reduce((e,t)=>Math.max(e,t),0),left:t.reduce((e,t)=>Math.min(e,t),1/0),right:r.reduce((e,t)=>Math.max(e,t),0),top:i.reduce((e,t)=>Math.min(e,t),1/0)}}},pr=class{constructor(e){var t;this.options=e,this.container=null!=(t=e.container)?t:null==(t=e.player)?void 0:t.video}compareConatinerScale(e){var t=+this.container.getBoundingClientRect().width/this.options.width;return this.options.logger.group("trace","NativeScaler.compareContainerScale").message("containerRatio",t).message("ratio",e).end(),Math.max(e,t)}ratio(){var e=this.container.getBoundingClientRect(),t=Math.min(+e.width/this.options.width,+e.height/this.options.height),r=Math.max(+e.width/this.options.width,+e.height/this.options.height);return this.options.logger.group("trace","NativeScaler.ratio").message("ratioMin",t).message("ratioMax",r).message("rect",e).message("width",this.options.width).message("height",this.options.height).end(),t}scale(){this.scaleBy(this.ratio())}scaleBy(e){let t=this.compareConatinerScale(e);Array.prototype.forEach.call(this.options.elements,e=>{this.scaleElement(e,t)})}scaleElement(e,t){e.style.scale=t.toString(),e.style.transformOrigin="top left",e.style.left=(this.container.clientWidth-e.clientWidth*t)/2+"px",e.style.top=(this.container.clientHeight-e.clientHeight*t)/2+"px"}},gr=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3`}createRenderRoot(){return this}},vr=(gr([Is()],mr.prototype,"props",void 0),mr=gr([ws("rich-element-box")],mr),function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3 ${this.props.properties.alt} `}createRenderRoot(){return this}},br=(vr([Is()],yr.prototype,"props",void 0),yr=vr([ws("rich-element-image")],yr),function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3 ${this.props.properties.value} `}createRenderRoot(){return this}};br([Is()],Er.prototype,"props",void 0),Er=br([ws("rich-element-text")],Er);var In,Cn,ys=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{try{return CSS.supports("scale: 0.5")&&CSS.supports("transform-origin: top left")}catch(e){return!1}})(),this.containerRef=new Mu,this.isMobile=_s(),this.scaleInterval=0,this.scale=()=>Pn(this,void 0,void 0,function*(){if(this.scaler){var e=this.scaler.ratio();let t=this.logger.group("trace",`Ratio Start: ${this.player.config.video.width} ---- `+e);var r=null==(r=this.factorCalculator)?void 0:r.bestFactor(e,e=>t.message("details",e));t.message("ratio",r),r&&(r=Math.min(Math.max(r,e),this.factorCalculator.maxFactor),t.message("selected ratio",r),this.scaler.scaleBy(r)),t.end()}}),In.set(this,()=>{this.containerRef.value&&this.useScaler(this.containerRef.value)})}connectedCallback(){super.connectedCallback(),this.resizeObserver=new ResizeObserver(Dn(this,In,"f")),this.resizeObserver.observe(this.player.player),document.addEventListener("DOMContentLoaded",Dn(this,In,"f")),window.addEventListener("resize",Dn(this,In,"f")),this.player.addEventListener(bs.PLAYER_RESIZE,Dn(this,In,"f")),Dn(this,In,"f").call(this),this.scaleInterval&&(this.scaleIntervalId=window.setInterval(Dn(this,In,"f"),this.scaleInterval))}disconnectedCallback(){var e;super.disconnectedCallback(),document.removeEventListener("DOMContentLoaded",Dn(this,In,"f")),window.removeEventListener("resize",Dn(this,In,"f")),null!=(e=this.player)&&e.removeEventListener(bs.PLAYER_RESIZE,Dn(this,In,"f")),null!=(e=this.resizeObserver)&&e.disconnect(),this.scaleIntervalId&&(window.clearInterval(this.scaleIntervalId),this.scaleIntervalId=void 0),this.scaler=void 0,this.factorCalculator=void 0}render(){var e=s({display:"block",height:this.player.config.video.height+"px",left:0,overflow:"hidden",pointerEvents:"none",position:"absolute",top:0,width:this.player.config.video.width+"px",zIndex:"1000"});return c`
${Ln(this.elements.sort((e,t)=>e.order-t.order),this.renderElement)}
`}updated(){this.scale()}createRenderRoot(){return this}renderElement(e){return"image"===e.type?c``:"text"===e.type?c``:"box"===e.type?c``:void 0}useScaler(r){return Pn(this,void 0,void 0,function*(){this.logger.trace("useScaler",this.name);var e={height:this.player.config.video.height,player:this.player,width:this.player.config.video.width},t=Array.from(this.elementsHtml),e=(this.canUseScale?(this.logger.trace("Using NativeScaler"),this.scaler=new pr(Object.assign(Object.assign({},e),{elements:[r],logger:this.logger}))):this.scaler||(this.logger.trace("Using MakeshiftScaler"),this.scaler=new ur(Object.assign(Object.assign({},e),{container:r,elements:t,logger:this.logger}))),{elements:this.elements,height:this.player.config.video.height,width:this.player.config.video.width});this.factorCalculator=null!=(t=this.factorCalculator)?t:new fr(e,this.logger),this.scale()})}};In=new WeakMap,g.componentName="RichElement",g.styles=e``,ys([Is({attribute:!1,type:Object})],g.prototype,"elements",void 0),ys([(Cn="rich-element-image > *, rich-element-text > *, rich-element-box > *",et({descriptor:e=>({get(){var e;return null!=(e=null==(e=this.renderRoot)?void 0:e.querySelectorAll(Cn))?e:[]},enumerable:!0,configurable:!0})}))],g.prototype,"elementsHtml",void 0),ys([Is({attribute:"name",reflect:!0,type:String})],g.prototype,"name",void 0),ys([Is({type:Number})],g.prototype,"scaleInterval",void 0),g=ys([ws("rich-element")],g);var xn,Ss=e`vturb-minihook{z-index:-1}#player.show-smartautoplay{pointer-events:none}#player .minihook{z-index:9;position:absolute;top:0;width:100%;height:100%;pointer-events:none}#player .minihook .item{opacity:1}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes fade-out{from{opacity:1}to{opacity:0}}#player .minihook .item.show{animation:fade-in .8s ease-in forwards}#player .minihook .item.hide{animation:fade-out .8s ease-in forwards}`,Ls=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{e=e.detail.time;let t=this.getItems(e);e=t.filter(e=>!this.activeItems.includes(e));let i=this.activeItems.filter(e=>!t.includes(e)),s=[...this.activeItems];if(0{var t=this.minihook.querySelector("#minihook-"+e.id);t&&!t.classList.contains("hide")&&(r.message("hide item",e),t.classList.add("hide"))}),r.end(),s=s.filter(e=>!i.includes(e))}fn(s,this.activeItems)||setTimeout(()=>{this.activeItems=s,this.dispatchEvent(new CustomEvent(bs.MINIHOOK_ITEMS,{detail:{items:s}}))},850)}}connectedCallback(){super.connectedCallback(),this.player.addEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate)}disconnectedCallback(){super.disconnectedCallback(),this.player.removeEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate)}getItems(t){return this.player.config.minihooks.items.filter(e=>t>=e.range.start&&t<=e.range.finish)}render(){return c`
${this.renderRichElement()}
`}renderRichElement(){return c` ${Pt(this.activeItems,e=>e.id,(e,t)=>c``)} `}},_r=(Tr.styles=[Ss],Tr.componentName="Minihook",Ls([Cs()],Tr.prototype,"activeItems",void 0),Ls([Ps(".minihook")],Tr.prototype,"minihook",void 0),Tr=Ls([ws("vturb-minihook")],Tr),(e,t)=>Math.max(0,Math.min((e||0)/(t||1)*100,100))),Sr=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{let e,t=this.videoCurrentTime,r=_r(t,this.videoDuration);null!=(e=this.player.config.pixels)&&e.items.forEach(e=>{this.shouldDispatchPixel(e,t,r)&&this.dispatchedPixels.add(this.formatDispatchedPixelId(e))})},this.onTimeUpdate=(e,t)=>{var r,t=t.detail.time,i=_r(t,this.videoDuration);"facebook"===e.type?(r=`View${i-i%xn.continousPercentage}%`,this.shouldDispatchPixel(e,t,i,r)&&this.dispatchPixel(e,r),this.shouldDispatchPixel(e,t,i)&&this.dispatchPixel(e)):this.shouldDispatchPixel(e,t,i)&&(this.dispatchPixel(e),this.player.removeEventListener(bs.VIDEO_TIMEUPDATE,e.caller))}}get videoDuration(){var e;return(null==(e=this.player.video)?void 0:e.duration)||0}get videoCurrentTime(){var e;return(null==(e=this.player.video)?void 0:e.currentTime)||0}connectedCallback(){super.connectedCallback(),this.initFacebookPixel(),this.player.addEventListener(bs.RESUME_CONTINUE,this.onCheckIfPixelsWasAlreadyDispatched)}disconnectedCallback(){var e;super.disconnectedCallback(),this.player.removeEventListener(bs.RESUME_CONTINUE,this.onCheckIfPixelsWasAlreadyDispatched),null!=(e=this.player.config.pixels)&&e.items.forEach(e=>{e.caller&&this.player.removeEventListener(bs.VIDEO_TIMEUPDATE,e.caller)})}firstUpdated(){var e;null!=(e=this.player.config.pixels)&&e.items.forEach(e=>{this.setPixelCaller(e)})}render(){return null}setPixelCaller(t){t.caller||(t.caller=e=>this.onTimeUpdate(t,e),this.player.addEventListener(bs.VIDEO_TIMEUPDATE,t.caller))}updated(){var e;null!=(e=this.player.config.pixels)&&e.items.forEach(e=>{this.setPixelCaller(e)})}formatDispatchedPixelId(e,t){return t?e.id+"-"+t:e.id}dispatchPixel(e,t){switch(this.logger.group("debug",`dispatching pixel: ${e.id} `+(null!=t?t:"")).message("pixel",e).end(),e.type){case"custom":var r=this.doc.createRange().createContextualFragment(atob(e.customHtml));this.logger.debug("fragment",[r,atob(e.customHtml)]),this.doc.body.appendChild(r);break;case"facebook":this.win.fbq&&"function"==typeof this.win.fbq||this.initFacebookPixel(),this.win.fbq("trackSingleCustom",e.pixelId,null!=t?t:e.pixelValue);break;case"google":this.win.gtag&&"function"==typeof this.win.gtag||this.initGoogleTagManager(),this.win.gtag("event",e.pixelValue,{send_to:e.pixelId})}this.dispatchedPixels.add(this.formatDispatchedPixelId(e,t))}initFacebookPixel(){var e=null==(e=this.player.config.pixels)?void 0:e.items.filter(e=>"facebook"===e.type).map(e=>e.pixelId).filter((e,t,r)=>r.indexOf(e)===t);this.logger.group("debug","initializing Facebook Pixel").message("pixelIds",e).end();(()=>{if(!this.win.fbq){let t=this.win.fbq=function(...e){t.callMethod?t.callMethod(...e):t.queue.push(e)};this.win._fbq||(this.win._fbq=t),(t.push=t).loaded=!0,t.version="2.0",t.queue=[];var e=this.doc.createElement("script"),r=(e.async=!0,e.src="https://connect.facebook.net/en_US/fbevents.js",this.doc.getElementsByTagName("script")[0]);r.parentNode.insertBefore(e,r)}})(),e.forEach(e=>{this.win.fbq("init",e)}),this.win.fbq("track","PageView")}initGoogleTagManager(){var e=null==(e=this.player.config.pixels)?void 0:e.items.some(e=>"google"===e.type);if(e){var t=this.win.gtag&&"function"==typeof this.win.gtag,r=this.win.dataLayer&&"function"==typeof this.win.dataLayer.push,e=(this.logger.group("debug","initializing Google Tag Manager").message("hasGooglePixel",e).message("haveGoogleTagManager",t).message("haveDatalayer",r).end(),null==(e=this.player.config.pixels)?void 0:e.items.filter(e=>"google"===e.type).map(e=>e.pixelId).filter((e,t,r)=>r.indexOf(e)===t));if(r||(this.logger.info("Add Data Layer to page"),this.win.dataLayer=this.win.dataLayer||[]),!t){this.logger.info("Add Google Tag Manager to page"),this.logger.info("https://developers.google.com/tag-manager/quickstart");let t=this.win;t.gtag=function(...e){t.dataLayer.push(e)},t.gtag("js",new Date)}e.forEach(t=>{this.win.dataLayer.find(e=>e&&e.config&&e.config.send_to===t)||(this.win.gtag("config",t),document.head.innerHTML+=``)})}}shouldDispatchPixel(e,t,r,i){var s;return!(null==(s=this.player.config.pixels)||!s.active||!sa(i)&&this.dispatchedPixels.has(this.formatDispatchedPixelId(e))||(sa(i)?this.dispatchedPixels.has(this.formatDispatchedPixelId(e,i)):(s="time"===e.dispatchType?t:r,!(e.dispatchIn<=s))))}},wr=(Ar.componentName="Pixels",Ar.continousPercentage=5,Sr([Cs()],Ar.prototype,"dispatchedPixels",void 0),Ar=xn=Sr([ws("vturb-pixels")],Ar),Es=e`.resume{position:absolute;top:0;left:0;right:0;bottom:0;z-index:var(--resume-index,9999);background-color:var(--resume-background-color,rgba(0,0,0,.6));backdrop-filter:blur(var(--resume-blur, .3125em));padding:.5em;cursor:initial;font-size:var(--resume-font-size,1em)}.resume__content{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);text-align:center}.resume__title{margin:0 .5em .8em;min-width:var(--resume-min-width,11.25em);font-size:2.5em;line-height:var(--resume-line-height,1.3);text-align:center;color:var(--resume-foreground-color,#fff);font-weight:700}.resume__actions{display:inline-block}.resume__actions>div{background:rgba(0,0,0,0);padding:0;margin:.8em;text-align:left;cursor:pointer;border:none;display:inline-table;color:var(--resume-foreground-color,#fff);min-width:var(--resume-min-width,11.25em);opacity:1;transition:opacity .2s ease;pointer-events:all}.m-w-360 .resume__actions>div,.m-w-480 .resume__actions>div,.m-w-550 .resume__actions>div{display:table;margin-bottom:1.2em}.resume__text{text-align:left;font-size:1.4em;line-height:1.1;font-weight:700;display:table-cell;vertical-align:middle;padding:0 1em 0 .6em;align-content:normal}.resume__icon{width:2.9em;height:2.9em;padding:0;border:.125em solid var(--resume-foreground-color,#fff);fill:var(--resume-foreground-color,#fff);border-radius:50%;margin-right:.5em;display:table-cell;vertical-align:middle;text-align:center;box-sizing:border-box;padding:0;display:flex;align-items:center;justify-content:center}.resume__icon svg{display:inline-block;width:1.875em;height:1.875em}.resume__play .resume__icon{padding:0 0 0 .125em}.resume__rewind .resume__icon{padding:.0625em .25em 0 .125em}.m-w-480 .resume__title,.m-w-550 .resume__title{font-size:1.8em;margin:.6em}.m-w-480 .resume__icon,.m-w-550 .resume__icon{width:3em;height:3em}.m-w-480 .resume__icon svg,.m-w-550 .resume__icon svg{width:1.7em;height:1.7em}.m-w-360 .resume__title{font-size:1.8em;margin-bottom:.4em}.m-w-360 .resume__icon{width:2.5em;height:2.5em}.m-w-360 .resume__icon svg{width:1.125em;height:1.125em}`,As=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{e.stopPropagation(),e.preventDefault()},this.updateResume=e=>{var t;this.player.controllers.blockers.noneBlocker("smartAutoPlay")&&null!=(t=this.player.video)&&t.currentTime&&5<=(null==(t=this.player.video)?void 0:t.currentTime)&&this.player.store.set(this.player.config.id+"-resume",(null==(t=this.player.video)?void 0:t.currentTime)||0)}}connectedCallback(){super.connectedCallback();var e=this.player.store.get(this.player.config.id+"-resume",0);this.player.config.resume.active&&e&&(this.player.dispatchEvent(new CustomEvent(bs.RESUME_ACTIVE)),this.player.controllers.blockers.block("resume"),this.logger.debug("Resume block: "+e),this.player.controls.seek(Math.max(e-this.lastTimeReduced,0))),this.player.addEventListener(bs.VIDEO_TIMEUPDATE,this.updateResume)}continue(e){e.stopPropagation(),this.player.controls.play();e=new CustomEvent(bs.RESUME_CONTINUE);this.player.dispatchEvent(e),this.destroy()}destroy(){this.player.controllers.blockers.unblock("resume"),this.destroyed=!0}disconnectedCallback(){super.disconnectedCallback(),this.player.removeEventListener(bs.VIDEO_TIMEUPDATE,this.updateResume),this.player.controllers.blockers.unblock("resume")}render(){if(!this.player.controllers.blockers.noneBlocker("resume")&&!this.destroyed)return c`
${this.player.config.resume.title}
${lt} ${this.player.config.resume.play}
${ht} ${this.player.config.resume.replay}
`}restart(e){e.stopPropagation(),this.player.controls.seek(0),this.player.controls.play();e=new CustomEvent(bs.RESUME_RESTART);this.player.dispatchEvent(e),this.destroy()}});wr.styles=[Es],As([Cs()],wr.prototype,"destroyed",void 0),wr=As([ws("vturb-resume")],wr);class Fu extends Cu{constructor(e){if(super(e),this.et=l,e.type!==Et.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===l||null==e)return this.ft=void 0,this.et=e;if(e===y)return e;if("string"!=typeof e)throw Error(this.constructor.directiveName+"() called with a non-string value");return e===this.et?this.ft:(e=[this.et=e],this.ft={_$litType$:this.constructor.resultType,strings:e.raw=e,values:[]})}}Fu.directiveName="unsafeHTML",Fu.resultType=1;let Lr=Tt(Fu),kr=e=>{var t,r,i,s,a,n,o,l,h,d;return"pulse"===(null==e?void 0:e.animation)?(r=null!=(r=null==(r=(r=e).properties)?void 0:r.speed)?r:1,t=Ts({prefix:"pulse-"}),r=` @keyframes animation-${t} { 0% { transform: scale(1); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } } .${t} { position: absolute; transform-origin: center center; animation: animation-${t} ${4/r}s infinite; } `,{className:t,style:c``}):"glow"===(null==e?void 0:e.animation)?(r=null!=(r=null==(r=(t=e).properties)?void 0:r.speed)?r:1,t=null!=(t=null==(t=t.properties)?void 0:t.size)?t:4,i=Ts({prefix:"glow-"}),r=` .${i} .rich-element-container :is(rich-element-box, rich-element-image):first-child :is(.rich-element-box, .rich-element-image):before { content: ''; background: linear-gradient(45deg, #ff0000, #ff7300, #fffb00, #48ff00, #00ffd5, #002bff, #7a00ff, #ff00c8, #ff0000); position: absolute; top: -${t}px; left: -${t}px; background-size: 500%; z-index: -1; filter: blur(${1.25*t}px); width: calc(100% - ${t*t}px); height: calc(100% - ${t*t}px); animation: animation-${i} ${75/r}s linear infinite; border-radius: ${2.5*t}px; -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; padding: ${t*t}px; } .${i} picture.rich-element-image { font-size:0; color:transparent; position: relative; content: ' '; } @keyframes animation-${i} { 0% { background-position: 0 0; } 50% { background-position: 400% 0; } 100% { background-position: 0 0; } } `,{className:i,style:c``}):"slide-horizontal"===(null==e?void 0:e.animation)?(s=null!=(s=null==(s=(i=e).properties)?void 0:s.speed)?s:1,i=null!=(i=null==(i=i.properties)?void 0:i.distance)?i:3,a=Ts({prefix:"slide-h-"}),i=` @keyframes animation-${a} { 0% { transform: translateX(-${i}%); } 50% { transform: translateX(${i}%); } 100% { transform: translateX(-${i}%); } } .${a} { position: absolute; transform-origin: center center; animation: animation-${a} ${8/s}s var(--base-transition-cubic) infinite; } `,{className:a,style:c``}):"slide-vertical"===(null==e?void 0:e.animation)?(a=null!=(a=null==(a=(s=e).properties)?void 0:a.speed)?a:1,s=null!=(s=null==(s=s.properties)?void 0:s.distance)?s:3,n=Ts({prefix:"slide-v-"}),s=` @keyframes animation-${n} { 0% { transform: translateY(-${s}%); } 50% { transform: translateY(${s}%); } 100% { transform: translateY(-${s}%); } } .${n} { position: absolute; transform-origin: center center; animation: animation-${n} ${8/a}s var(--base-transition-cubic) infinite; } `,{className:n,style:c``}):"head-shake"===(null==e?void 0:e.animation)?(o=null!=(o=null==(o=(n=e).properties)?void 0:o.speed)?o:1,n=null!=(n=null==(n=n.properties)?void 0:n.distance)?n:6,l=Ts({prefix:"head-shake-"}),n=` @keyframes animation-${l} { 0% { transform: translateX(0); } 6.5% { transform: translateX(-${n}px) rotateY(-${1.5*n}deg); } 18.5% { transform: translateX(${.83333333*n}px) rotateY(${1.16666667*n}deg); } 31.5% { transform: translateX(-${.5*n}px) rotateY(-${.83333333*n}deg); } 43.5% { transform: translateX(${.333*n}px) rotateY(${.5*n}deg); } 50% { transform: translateX(0); } } .${l} { position: absolute; transform-origin: center center; animation: animation-${l} ${10/o}s ease-in-out infinite; } `,{className:l,style:c``}):"tada"===(null==e?void 0:e.animation)?(l=null!=(l=null==(l=(o=e).properties)?void 0:l.speed)?l:1,o=null!=(o=null==(o=o.properties)?void 0:o.distance)?o:6,h=Ts({prefix:"tada-"}),o=` @keyframes animation-${h} { from { transform: scale3d(1, 1, 1); } 8% { transform: scale3d(0.98, 0.98, 0.98) rotate3d(0, 0, 1, -${o=3*(o/5)}deg); } 16%, 32%, 48%, 64% { transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, ${o}deg); } 24%, 40%, 56%, 72% { transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -${o}deg); } 80%, 0% { transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0deg); } to { transform: scale3d(1, 1, 1); } } .${h} { position: absolute; transform-origin: center center; animation-name: animation-${h}; animation-duration: ${10/l}s; animation-timing-function: linear; animation-iteration-count: infinite; } `,{className:h,style:c``}):"swing"===(null==e?void 0:e.animation)?(e=null!=(e=null==(e=(h=e).properties)?void 0:e.speed)?e:1,h=null!=(h=null==(h=h.properties)?void 0:h.distance)?h:6,d=Ts({prefix:"swing-"}),h=` @keyframes animation-${d} { from { transform: rotate3d(0, 0, 1, 0deg); } 15% { transform: rotate3d(0, 0, 1, ${15*(h/=5)}deg); } 30% { transform: rotate3d(0, 0, 1, -${10*h}deg); } 45% { transform: rotate3d(0, 0, 1, ${5*h}deg); } 60% { transform: rotate3d(0, 0, 1, -${5*h}deg); } 75% { transform: rotate3d(0, 0, 1, 0deg); } to { transform: rotate3d(0, 0, 1, 0deg); } } .${d} { position: absolute; transform-origin: center center; animation-name: animation-${d}; animation-duration: ${10/e}s; animation-timing-function: ease-in-out; animation-iteration-count: infinite; } `,{className:d,style:c``}):{className:"",style:c``}},Rr=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{"resume"===e.detail.blocker?(this.logger.trace("destroy smartautoplay by resume blocker"),this.destroy()):"smartAutoPlay"!==e.detail.blocker||this.alreadyShowed||this.destroyed||(this.logger.info("show smartautoplay by smartAutoPlay blocker"),this.doShow())},this.checkIfSimulatorMP4Exists=()=>Mn(this,void 0,void 0,function*(){return 200===(yield fetch(this.simulatorMP4,{method:"HEAD"})).status}),this.customPreviewMount=r=>Mn(this,void 0,void 0,function*(){this.video=yield r.target.videoAsync;let e=({detail:e})=>{this.video.currentTime=e.time},t=()=>{this.player.removeEventListener(bs.VIDEO_TIMEUPDATE,e),this.player.removeEventListener(bs.SMARTAUTOPLAY_INACTIVE,t)};this.player.addEventListener(bs.VIDEO_TIMEUPDATE,e),this.player.addEventListener(bs.SMARTAUTOPLAY_INACTIVE,t),this.initializeVideo()}),this.destroy=()=>{this.player.dispatchEvent(new CustomEvent(bs.SMARTAUTOPLAY_INACTIVE)),this.logger.trace("destroy smartautoplay"),this.player.controllers.blockers.unblock("smartAutoPlay"),this.player.config.smartAutoPlay&&(this.player.config.smartAutoPlay.active=!1),this.destroyed=!0},this.doShow=()=>Mn(this,void 0,void 0,function*(){this.logger.group("trace","show smartautoplay").message("config",this.settings).end(),this.alreadyShowed=!0,this.video&&this.initializeVideo()}),this.init=()=>Mn(this,void 0,void 0,function*(){if(this.logger.trace("init"),this.times+=1,this.player.config.preview)return this.logger.info("init preview"),this.muted();this.logger.info("init video not muted"),this.video.currentTime=0;var e=this.video.play(),e=(this.logger.info("init video play",{video:this.video}),e.then(()=>{this.logger.info("able to play video"),this.player.controllers.analytics.metric("smartautoplay.audio_play_success",1),this.removeSmartPlay()}).catch(()=>{this.logger.info("unable to play video, try muted"),this.muted()}),new CustomEvent(bs.SMARTAUTOPLAY_ACTIVE,{detail:{el:this,video:this.video}}));this.player.dispatchEvent(e)}),this.initializeVideo=()=>Mn(this,void 0,void 0,function*(){this.video&&!this.alreadyInitialized&&(this.alreadyInitialized=!0,this.video.addEventListener("timeupdate",this.onVideoTimeUpdate),this.setDefaultAttributes(),this.init())}),this.muted=()=>Mn(this,void 0,void 0,function*(){let e,t,r=(null!=(e=this.settings.startAt)?e:0)+On.PLAYBACK_TOLERANCE;var i=()=>{this.logger.group("info","restore muted").message("times",this.times).end(),this.restorePreviousAttributes(),this.times<=5?setTimeout(()=>{var e;this.logger.group("info","we can't plays inline try again").message("details",{times:this.times}).end(),(null!=(e=this.video.currentTime)?e:0)<=r&&this.init()},50):(this.logger.info("startAutoPlaySimulator"),this.startAutoPlaySimulator())};if(this.video)return this.video.setAttribute("loop","loop"),this.video.setAttribute("autoplay","autoplay"),this.video.setAttribute("muted","muted"),this.video.setAttribute("playsinline","playsinline"),this.video.muted=!0,this.logger.info("set current time",{currentTime:this.settings.startAt}),this.video.currentTime=null!=(t=this.settings.startAt)?t:0,Promise.resolve(this.video.play()).then(()=>{this.triggerReady()}).catch(i);this.logger.error("muted: video not found")}),this.onBackgroundProbeSuccess=()=>{this.logger.info("Background autoplay probe succeeded, attempting audio play"),this.video&&!this.destroyed&&this.alreadyShowed&&(this.video.muted=!1,this.video.play().then(()=>{this.logger.info("Audio play successful after background probe"),this.player.controllers.analytics.metric("smartautoplay.background_probe_success",1),this.removeSmartPlay()}).catch(()=>{this.logger.info("Audio play failed despite background probe success"),this.player.controllers.analytics.metric("smartautoplay.background_probe_failure",1)}))},this.onSmartAutoPlayClick=e=>{this.logger.debug("click"),e.stopPropagation(),e.preventDefault(),this.removeSmartPlay()},this.onVideoTimeUpdate=()=>{var e,t;this.player.controllers.blockers.anyBlocker("played")?this.logger.warn("onVideoTimeUpdate: skipping seek operations, video already played"):((t=null!=(t=this.video.currentTime)?t:0)<(null!=(e=this.settings.startAt)?e:0)&&(this.video.currentTime=null!=(e=this.settings.startAt)?e:0),t>=(null!=(e=this.settings.endAt)?e:1/0)&&(this.video.currentTime=null!=(t=this.settings.startAt)?t:0))},this.removeSmartPlay=(e=!0)=>{this.logger.debug("removing smart autoplay"),this.restorePreviousAttributes(),e&&this.sendPlayEvent(),this.destroy()},this.restorePreviousAttributes=()=>{var e=Object.keys(this.previousAttributes);this.logger.debug("restoring previous attributes",{attributes:this.previousAttributes}),e.forEach(e=>{var t;null===this.previousAttributes[e]&&this.video?(this.video.removeAttribute(e),e in this.video&&(this.video[e]=!1)):null!=(t=this.video)&&t.setAttribute(e,this.previousAttributes[e])})},this.sendPlayEvent=()=>{var e;this.video&&(this.logger.trace("sendPlayEvent"),this.player.dispatchEvent(new CustomEvent(bs.SMARTAUTOPLAY_PLAY)),this.restorePreviousAttributes(),(e=this.player.controls).volume(100),e.seek(0),this.player.autoplay(!1),this.player.video.dispatchEvent(new Event("play")),e.awaitPlay())},this.setDefaultAttributes=()=>Mn(this,void 0,void 0,function*(){this.video?this.previousAttributes=["loop","autoplay","muted","playsinline"].reduce((e,t)=>(e[t]=this.video.getAttribute(t),e),{}):this.logger.error("setDefaultAttributes: video not found")}),this.startAutoPlaySimulator=()=>{var e;null!=(e=this.player.controllers.analytics)&&e.customEvent("smartautoplay-simulator",{}),this.player.controllers.analytics.metric("smartautoplay.simulator_activated",1),this.smartautoplaySimulator.then(t=>Mn(this,void 0,void 0,function*(){var e;(yield this.checkIfSimulatorMP4Exists())?(t.src=this.simulatorMP4,t.style.display="block",t.addEventListener("load",()=>{this.triggerReady()})):(null!=(e=this.player.controllers.analytics)&&e.customEvent("smartautoplay-simulator-not-found",{}),t.style.display="none",this.triggerReady())}))}}get simulatorMP4(){var e=(this.settings.customPreview||this.player.config.video).id,t=null!=(t=this.settings.startAt)?t:0;return`https://cdn.converteai.net/${this.player.config.oid}/${e}/smartautoplay-${t}s.mp4`}static shouldLoad(e){return e.active&&0super.disconnectedCallback}});return Mn(this,void 0,void 0,function*(){var e;t.disconnectedCallback.call(this),this.logger.debug("disconnectedCallback"),this.player.removeEventListener(bs.PLAYER_BLOCKED,this.blockerChanged),this.player.removeEventListener(bs.SMARTAUTOPLAY_PROBE_SUCCESS,this.onBackgroundProbeSuccess),null!=(e=this.player.video)&&e.removeEventListener("timeupdate",this.onVideoTimeUpdate)})}firstUpdated(){this.player.controllers.blockers.anyBlocker("resume")&&this.player.controllers.blockers.noneBlocker("played")&&(this.logger.group("trace","firstUpdated: destroy smartautoplay").message("blockers",{played:this.player.controllers.blockers.noneBlocker("played"),resume:this.player.controllers.blockers.anyBlocker("resume")}).end(),this.destroy())}getSlotSmartAutoPlay(){return this.player.interface.querySelector("[slot='smartautoplay']")}render(){var e,t,r,i;if(!this.destroyed&&this.alreadyShowed)return e=this.renderFallback(),this.hasSlot?((t=this.getSlotSmartAutoPlay())&&(t.style.display="block"),c`${this.renderCustomPreview()} ${e}
`):(t=this.settings,{className:r,style:i}=kr(t.animation),c`${this.renderCustomPreview()} ${e}
${i}${Ds(null==(e=t.elements)?void 0:e.length,()=>this.renderRichElement())}
`)}renderCustomPreview(){return this.settings.customPreview?c``:c``}renderFallback(){var e="position: absolute; top: 0; left: 0; width: 100%;height: 100%; object-fit: cover; display: none; z-index: 9999;",t="smartautoplay-simulator";return ia()||/iPad|iPhone|iPod/.test(window.navigator.userAgent)?c`${"Smart`:c``}triggerReady(){this.player.dispatchEvent(new CustomEvent(bs.SMARTAUTOPLAY_VIDEO_READY))}willUpdate(e){!this.alreadyShowed&&!this.destroyed&&this.player.controllers.blockers.noneBlocker("resume")&&this.player.controllers.blockers.noneBlocker("played")&&this.player.controllers.blockers.block("smartAutoPlay"),e.has("destroyed")&&this.destroyed&&(this.logger.debug("willUpdate: destroyed"),this.player.removeEventListener(bs.PLAYER_BLOCKED,this.blockerChanged)),this.logger.group("trace","willUpdate").message("checks",{alreadyShowed:!!this.alreadyShowed,played:this.player.controllers.blockers.noneBlocker("played"),resume:this.player.controllers.blockers.noneBlocker("resume")}).end()}renderRichElement(){return c``}};m.componentName="SmartAutoPlay",m.PLAYBACK_TOLERANCE=.01,m.styles=e` #player.show-smartautoplay { pointer-events: none; } #player.already-played .smartautoplay { display: none; } #player.show-smartautoplay .smartautoplay { display: block; } .smartautoplay { display: none; cursor: pointer; z-index: 9999; position: absolute; top: 0; width: 100%; height: 100%; } .smartautoplay { cursor: pointer; } .smartautoplay .controller-mask { opacity: 0 !important; transform: translateY(100%) !important; } .smartautoplay .controller { opacity: 0 !important; transform: translateY(100%) !important; } .smartautoplay { } .smartautoplay .smartautoplay * { cursor: pointer; } `,Rr([Cs()],m.prototype,"destroyed",void 0),Rr([Cs()],m.prototype,"hasSlot",void 0),Rr([Cs()],m.prototype,"show",void 0),Rr([on(".smartautoplay")],m.prototype,"smartautoplay",void 0),Rr([on(".smartautoplay-simulator")],m.prototype,"smartautoplaySimulator",void 0),m=On=Rr([ws("vturb-smartautoplay")],m);var xs,ys=e`.thumbsniper{position:absolute;top:0;left:0;width:100%;height:100%;z-index:var(--thumbsniper-index,100);pointer-events:none;display:none}.in-pause .thumbsniper{display:block}.thumbsniper__thumb{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--thumbsniper-background-color)}.thumbsniper__thumb img{width:100%;height:100%;object-fit:var(--thumbsniper-image-fit)}.thumbsniper__button{width:max-content;max-width:80%;position:absolute;display:inline-block;pointer-events:all;padding:.5em;color:var(--thumbsniper-button-color);font-size:var(--thumbsniper-button-font-size);font-weight:var(--thumbsniper-button-font-weight);line-height:var(--thumbsniper-button-line-height);text-align:center;border-radius:var(--thumbsniper-button-border-radius);text-decoration:none;transition:all var(--base-transition)}.thumbsniper__button--lg{font-size:calc(var(--thumbsniper-button-size-lg)*1);padding:calc(var(--thumbsniper-button-size-lg)*.5) calc(var(--thumbsniper-button-size-lg)*.6666666667)}.m-w-550 .thumbsniper__button--lg,.m-w-768 .thumbsniper__button--lg{font-size:calc(var(--thumbsniper-button-size-lg)*1.25);padding:calc(var(--thumbsniper-button-size-lg)*.3333333333) calc(var(--thumbsniper-button-size-lg)*.5)}.m-w-360 .thumbsniper__button--lg,.m-w-480 .thumbsniper__button--lg{font-size:calc(var(--thumbsniper-button-size-lg)*1.5);padding:calc(var(--thumbsniper-button-size-lg)*.16666667) calc(var(--thumbsniper-button-size-lg)*.3333333333)}.thumbsniper__button--md{font-size:calc(var(--thumbsniper-button-size-md)*1);padding:calc(var(--thumbsniper-button-size-md)*.4) calc(var(--thumbsniper-button-size-md)*.6)}.m-w-550 .thumbsniper__button--md,.m-w-768 .thumbsniper__button--md{font-size:calc(var(--thumbsniper-button-size-md)*1.25);padding:calc(var(--thumbsniper-button-size-md)*.3) calc(var(--thumbsniper-button-size-md)*.4)}.m-w-360 .thumbsniper__button--md,.m-w-480 .thumbsniper__button--md{font-size:calc(var(--thumbsniper-button-size-md)*1.5);padding:calc(var(--thumbsniper-button-size-md)*.2) calc(var(--thumbsniper-button-size-md)*.3)}.thumbsniper__button--sm{font-size:calc(var(--thumbsniper-button-size-sm)*1);padding:calc(var(--thumbsniper-button-size-sm)*.25) calc(var(--thumbsniper-button-size-sm)*.5)}.m-w-550 .thumbsniper__button--sm,.m-w-768 .thumbsniper__button--sm{font-size:calc(var(--thumbsniper-button-size-sm)*1.25);padding:calc(var(--thumbsniper-button-size-sm)*.25) calc(var(--thumbsniper-button-size-sm)*.375)}.m-w-360 .thumbsniper__button--sm,.m-w-480 .thumbsniper__button--sm{font-size:calc(var(--thumbsniper-button-size-sm)*1.5);padding:calc(var(--thumbsniper-button-size-sm)*.125) calc(var(--thumbsniper-button-size-sm)*.25)}.thumbsniper__button--tl{top:var(--thumbsniper-button-margin);left:var(--thumbsniper-button-margin)}.thumbsniper__button--tc{top:var(--thumbsniper-button-margin);left:50%;transform:translateX(-50%)}.thumbsniper__button--tr{top:var(--thumbsniper-button-margin);right:var(--thumbsniper-button-margin)}.thumbsniper__button--cl{top:50%;left:var(--thumbsniper-button-margin);transform:translateY(-50%)}.thumbsniper__button--cc{top:50%;left:50%;transform:translate(-50%,-50%)}.thumbsniper__button--cr{top:50%;right:var(--thumbsniper-button-margin);transform:translateY(-50%)}.thumbsniper__button--bl{bottom:var(--thumbsniper-button-margin);left:var(--thumbsniper-button-margin)}.thumbsniper__button--bc{bottom:var(--thumbsniper-button-margin);left:50%;transform:translateX(-50%)}.thumbsniper__button--br{bottom:var(--thumbsniper-button-margin);right:var(--thumbsniper-button-margin)}`,Ss=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{e.stopPropagation(),this.player.controllers.analytics.onPlayerExitClick()},this.onUpdateMediaSessionArtwork=()=>{var e;null!=(e=this.player)&&e.hlsVideo&&null!=(e=this.currentThumb)&&e.image&&this.player.hlsVideo.setMediaSessionArtwork(this.currentThumb.image)},this.onEnded=()=>{this.player.config.video.picFinish&&(this.currentThumb={finish:1/0,id:"pic-finish",image:this.player.config.video.picFinish,start:0},this.requestUpdate())},this.onTimeUpdate=e=>{e=this.getThumb(e.detail.time);e!==this.currentThumb&&(this.logger.group("debug","change thumb: "+(null==e?void 0:e.id)).message("thumb",e).end(),this.currentThumb=e)},this.togglePlay=e=>{e.stopPropagation(),this.player.controls.toggle()}}connectedCallback(){super.connectedCallback(),this.player.addEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate),this.player.addEventListener(bs.VIDEO_ENDED,this.onEnded),this.player.addEventListener(bs.VIDEO_PAUSE,this.onUpdateMediaSessionArtwork)}disconnectedCallback(){super.disconnectedCallback(),this.player.removeEventListener(bs.VIDEO_TIMEUPDATE_MS,this.onTimeUpdate),this.player.removeEventListener(bs.VIDEO_ENDED,this.onEnded),this.player.removeEventListener(bs.VIDEO_PAUSE,this.onUpdateMediaSessionArtwork)}getThumb(e){if(this.player.config.thumbsniper.active)for(var t of this.player.config.thumbsniper.items)if(t.start<=e&&t.finish>=e)return t;return null}render(){return this.currentThumb?c`
${this.renderThumb()}${this.renderButton()}
`:null}renderButton(){var e;return null!=(e=this.currentThumb)&&e.button?(e=this.currentThumb.button,c` ${e.name} `):null}renderThumb(){return this.currentThumb?c`
thumbnail
`:null}};Ir.styles=[ys],Ss([Cs()],Ir.prototype,"currentThumb",void 0),Ir=Ss([ws("vturb-thumbsniper")],Ir);class Nu extends Ks{disconnectedCallback(){this.player.dispatchEvent(new CustomEvent(bs.TURBO_INACTIVE))}init(){this.logger.debug("init"),this.logger.debug("host connected"),this.player.addEventListener(bs.PLAYER_READY,()=>{if(this.logger.debug("player ready"),this.config.turbo.active){let e=1;e="single"===this.config.turbo.type?this.useSingle(this.config.turbo):this.useAutoTest(this.config.turbo),this.player.dispatchEvent(new CustomEvent(bs.TURBO_SPEED_CHANGED,{detail:{speed:e}})),this.player.dispatchEvent(new CustomEvent(bs.TURBO_ACTIVE))}})}useAutoTest(e){this.logger.info("use auto test",{turbos:e});var e=(null!=(e=e.items)?e:[]).filter(e=>e.active);return 0e&&!!t],(Ls=xs=xs||{}).iframeOpenLink="iframeOpenLink",Ls.callactionElementsChanged="callactionElementsChanged",Ls.connect="connect",Ls.disableConversionTraking="disableConversionTraking",Ls.displayHeadline="displayHeadline",Ls.displayHiddenElements="displayHiddenElements",Ls.displayCallActions="displayCallActions",Ls.enableConversionTraking="enableConversionTraking",Ls.fullscreen="fullscreen",Ls.fullscreenEnter="fullscreenEnter",Ls.fullscreenExit="fullscreenExit",Ls.insertAfter="insertAfter",Ls.insertBefore="insertBefore",Ls.mute="mute",Ls.pitchTime="pitchTime",Ls.reply="reply",Ls.resume="resume",Ls.smartautoplayActive="smartautoplayActive",Ls.smartautoplayInactive="smartautoplayInactive",Ls.smartautoplayVideoReady="smartautoplayVideoReady",Ls.smartplay="smartplay",Ls.unmute="unmute",Ls.updateUrlParams="updateUrlParams",Ls.videoEnded="videoEnded",Ls.videoPause="videoPause",Ls.videoPlay="videoPlay",Ls.videoSeek="videoSeek",Ls.videoSpeed="videoSpeed",Ls.videoTimeUpdate="videoTimeUpdate";let Cr="smartplayer/message-text-v4",Pr=(Ls.volumeChange="volumeChange",e=>{e=e.video;return e.aspectRatio?100*e.aspectRatio:e.height/e.width*100});class Uu{constructor(e){this.player=e,this.logger=new qc("IframeSdkClient"),this.logger.debug("IframeSdkClient constructor"),this.shouldConnect()&&this.connect()}doConnect(){this.send(xs.connect,{id:this.player.config.id,aspect:Pr(this.player.config),isVideoVertical:this.player.config.video.width{e.mime===Cr&&this.onMessage(e)}),this.doConnect()}mapEventToMessage(){var e;this.shouldConnect()&&(this.player.addEventListener(bs.IFRAME_OPEN_LINK,e=>{this.send(xs.iframeOpenLink,{url:e.detail.url,target:e.detail.target})}),this.player.addEventListener(bs.VIDEO_VOLUMECHANGE,()=>{var e;this.send(xs.volumeChange,{volume:(null==(e=this.player.video)?void 0:e.volume)||1})}),this.player.addEventListener(bs.VIDEO_PLAY,()=>{this.send(xs.videoPlay,{})}),this.player.addEventListener(bs.VIDEO_PAUSE,()=>{this.send(xs.videoPause,{})}),this.player.addEventListener(bs.SMARTAUTOPLAY_ACTIVE,()=>{this.send(xs.smartautoplayActive,{})}),this.player.addEventListener(bs.SMARTAUTOPLAY_INACTIVE,()=>{this.send(xs.smartautoplayInactive,{})}),this.player.addEventListener(bs.SMARTAUTOPLAY_VIDEO_READY,()=>{this.send(xs.smartautoplayVideoReady,{})}),this.player.addEventListener(bs.PITCH_TIME,()=>{this.send(xs.pitchTime,{})}),this.player.addEventListener(bs.CALLACTION_CONNECTED,e=>{this.send(xs.displayCallActions,{call_actions:e.detail.items})}),this.player.addEventListener(bs.CALLACTION_ELEMENTS_CHANGED,e=>{this.send(xs.callactionElementsChanged,{call_actions:e.detail.items,types:e.detail.types})}),this.player.addEventListener(bs.VIDEO_ENDED,()=>{this.send(xs.videoEnded,{})}),this.player.addEventListener(bs.FULLSCREEN_ENTER,()=>{this.send(xs.fullscreenEnter,{})}),this.player.addEventListener(bs.FULLSCREEN_EXIT,()=>{this.send(xs.fullscreenExit,{})}),this.player.addEventListener(bs.VIDEO_TIMEUPDATE_MS,()=>{this.send(xs.videoTimeUpdate,{time:this.player.interface.currentTime})}),this.player.addEventListener(bs.CONVERSION_TRACKING_ENABLED,()=>{this.send(xs.enableConversionTraking,{})}),this.player.addEventListener(bs.CONVERSION_TRACKING_DISABLED,()=>{this.send(xs.disableConversionTraking,{})}),this.player.addEventListener(bs.HEADLINE_RENDERED,e=>{this.send(xs.displayHeadline,{headline:e.detail.headline,html:e.detail.html,style:e.detail.style})}),this.player.addEventListener(bs.VIDEO_TIMEUPDATE,e=()=>{var e=this.player.urlUpdater("http://localhost/"),e=new URLSearchParams(e.split("?")[1]);let r={};e.forEach((e,t)=>{r[t]=e}),this.send(xs.updateUrlParams,{params:r})}),this.player.addEventListener(bs.VIDEO_ENDED,e),this.player.addEventListener(bs.CONVERSION_TRACKING_UPDATE,e),this.player.addEventListener(bs.PLAYER_BLOCKED,e=>{switch(e.detail.blocker){case"resume":this.send(xs.resume,!0);break;case"smartAutoPlay":this.send(xs.smartplay,!0);break;default:this.logger.debug("Player blocked",{blocker:e.detail.blocker})}}),this.player.addEventListener(bs.PLAYER_UNBLOCKED,e=>{switch(e.detail.blocker){case"resume":this.send(xs.resume,!1);break;case"smartAutoPlay":this.send(xs.smartplay,!1);break;default:this.logger.debug("Player unblocked",{blocker:e.detail.blocker})}}))}onMessage(e){let t,{payload:r,type:i}=e;switch(i){case xs.connect:this.doConnect();break;case xs.displayHiddenElements:this.player.interface.displayHiddenElements(r.time,r.selectors,Object.assign(Object.assign({},null!=(t=r.options)?t:{}),{callback:()=>this.send(xs.reply,{reply:r.reply})}));break;case xs.fullscreen:this.player.interface.fullscreen(r.mode);break;case xs.mute:this.player.interface.mute();break;case xs.unmute:this.player.interface.unmute();break;case xs.videoPause:this.player.interface.pause();break;case xs.videoPlay:this.player.interface.play();break;case xs.videoSeek:this.player.interface.seek(r.time);break;case xs.videoSpeed:this.player.interface.speed(r.speed);break;case xs.volumeChange:this.player.interface.setVolume(r.volume);break;default:this.logger.warn("Unknown message",e)}}send(e,t){var r;null!=(r=window.parent)&&r.postMessage({id:this.player.config.id,mime:Cr,payload:t,type:e},"*")}shouldConnect(){return null!==document.querySelector("meta[name='vturb-iframe']")&&window.parent!==window}}function Fn(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}let Dr="undefined"!=typeof localStorage?localStorage:"undefined"!=typeof sessionStorage?sessionStorage:{clear:()=>{document.cookie.split(";").forEach(e=>{document.cookie=e.replace(/^ +/,"").replace(/=.*/,`=;expires=${new Date(0).toUTCString()};path=/`)})},getItem:e=>{e=Fn(e),e=document.cookie.match(new RegExp("(^| )"+e+"=([^;]+)"));return e?e[2]:null},key:()=>null,length:0,removeItem:e=>{e=Fn(e);document.cookie=e+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT"},setItem:(e,t)=>{e=Fn(e);document.cookie=e+`=${t};path=/`}},xr={get(e,t){var e=Dr.getItem(e);return!e||null===(e=(e=>{try{return JSON.parse(e)}catch(e){return null}})(e))?t:e},set(e,t){Dr.setItem(e,JSON.stringify(t))}},H=Number.isFinite||function(e){return"number"==typeof e&&isFinite(e)},Or=Number.isSafeInteger||function(e){return"number"==typeof e&&Math.abs(e)<=Mr},Mr=Number.MAX_SAFE_INTEGER||9007199254740991,W=(e=>(e.NETWORK_ERROR="networkError",e.MEDIA_ERROR="mediaError",e.KEY_SYSTEM_ERROR="keySystemError",e.MUX_ERROR="muxError",e.OTHER_ERROR="otherError",e))({}),q=(e=>(e.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",e.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",e.KEY_SYSTEM_NO_SESSION="keySystemNoSession",e.KEY_SYSTEM_NO_CONFIGURED_LICENSE="keySystemNoConfiguredLicense",e.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",e.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED="keySystemServerCertificateRequestFailed",e.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED="keySystemServerCertificateUpdateFailed",e.KEY_SYSTEM_SESSION_UPDATE_FAILED="keySystemSessionUpdateFailed",e.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED="keySystemStatusOutputRestricted",e.KEY_SYSTEM_STATUS_INTERNAL_ERROR="keySystemStatusInternalError",e.KEY_SYSTEM_DESTROY_MEDIA_KEYS_ERROR="keySystemDestroyMediaKeysError",e.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR="keySystemDestroyCloseSessionError",e.KEY_SYSTEM_DESTROY_REMOVE_SESSION_ERROR="keySystemDestroyRemoveSessionError",e.MANIFEST_LOAD_ERROR="manifestLoadError",e.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",e.MANIFEST_PARSING_ERROR="manifestParsingError",e.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",e.LEVEL_EMPTY_ERROR="levelEmptyError",e.LEVEL_LOAD_ERROR="levelLoadError",e.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",e.LEVEL_PARSING_ERROR="levelParsingError",e.LEVEL_SWITCH_ERROR="levelSwitchError",e.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",e.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",e.SUBTITLE_LOAD_ERROR="subtitleTrackLoadError",e.SUBTITLE_TRACK_LOAD_TIMEOUT="subtitleTrackLoadTimeOut",e.FRAG_LOAD_ERROR="fragLoadError",e.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",e.FRAG_DECRYPT_ERROR="fragDecryptError",e.FRAG_PARSING_ERROR="fragParsingError",e.FRAG_GAP="fragGap",e.REMUX_ALLOC_ERROR="remuxAllocError",e.KEY_LOAD_ERROR="keyLoadError",e.KEY_LOAD_TIMEOUT="keyLoadTimeOut",e.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",e.BUFFER_INCOMPATIBLE_CODECS_ERROR="bufferIncompatibleCodecsError",e.BUFFER_APPEND_ERROR="bufferAppendError",e.BUFFER_APPENDING_ERROR="bufferAppendingError",e.BUFFER_STALLED_ERROR="bufferStalledError",e.BUFFER_FULL_ERROR="bufferFullError",e.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",e.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",e.ASSET_LIST_LOAD_ERROR="assetListLoadError",e.ASSET_LIST_LOAD_TIMEOUT="assetListLoadTimeout",e.ASSET_LIST_PARSING_ERROR="assetListParsingError",e.INTERSTITIAL_ASSET_ITEM_ERROR="interstitialAssetItemError",e.INTERNAL_EXCEPTION="internalException",e.INTERNAL_ABORTED="aborted",e.ATTACH_MEDIA_ERROR="attachMediaError",e.UNKNOWN="unknown",e))({}),X=(e=>(e.MEDIA_ATTACHING="hlsMediaAttaching",e.MEDIA_ATTACHED="hlsMediaAttached",e.MEDIA_DETACHING="hlsMediaDetaching",e.MEDIA_DETACHED="hlsMediaDetached",e.MEDIA_ENDED="hlsMediaEnded",e.STALL_RESOLVED="hlsStallResolved",e.BUFFER_RESET="hlsBufferReset",e.BUFFER_CODECS="hlsBufferCodecs",e.BUFFER_CREATED="hlsBufferCreated",e.BUFFER_APPENDING="hlsBufferAppending",e.BUFFER_APPENDED="hlsBufferAppended",e.BUFFER_EOS="hlsBufferEos",e.BUFFERED_TO_END="hlsBufferedToEnd",e.BUFFER_FLUSHING="hlsBufferFlushing",e.BUFFER_FLUSHED="hlsBufferFlushed",e.MANIFEST_LOADING="hlsManifestLoading",e.MANIFEST_LOADED="hlsManifestLoaded",e.MANIFEST_PARSED="hlsManifestParsed",e.LEVEL_SWITCHING="hlsLevelSwitching",e.LEVEL_SWITCHED="hlsLevelSwitched",e.LEVEL_LOADING="hlsLevelLoading",e.LEVEL_LOADED="hlsLevelLoaded",e.LEVEL_UPDATED="hlsLevelUpdated",e.LEVEL_PTS_UPDATED="hlsLevelPtsUpdated",e.LEVELS_UPDATED="hlsLevelsUpdated",e.AUDIO_TRACKS_UPDATED="hlsAudioTracksUpdated",e.AUDIO_TRACK_SWITCHING="hlsAudioTrackSwitching",e.AUDIO_TRACK_SWITCHED="hlsAudioTrackSwitched",e.AUDIO_TRACK_LOADING="hlsAudioTrackLoading",e.AUDIO_TRACK_LOADED="hlsAudioTrackLoaded",e.AUDIO_TRACK_UPDATED="hlsAudioTrackUpdated",e.SUBTITLE_TRACKS_UPDATED="hlsSubtitleTracksUpdated",e.SUBTITLE_TRACKS_CLEARED="hlsSubtitleTracksCleared",e.SUBTITLE_TRACK_SWITCH="hlsSubtitleTrackSwitch",e.SUBTITLE_TRACK_LOADING="hlsSubtitleTrackLoading",e.SUBTITLE_TRACK_LOADED="hlsSubtitleTrackLoaded",e.SUBTITLE_TRACK_UPDATED="hlsSubtitleTrackUpdated",e.SUBTITLE_FRAG_PROCESSED="hlsSubtitleFragProcessed",e.CUES_PARSED="hlsCuesParsed",e.NON_NATIVE_TEXT_TRACKS_FOUND="hlsNonNativeTextTracksFound",e.INIT_PTS_FOUND="hlsInitPtsFound",e.FRAG_LOADING="hlsFragLoading",e.FRAG_LOAD_EMERGENCY_ABORTED="hlsFragLoadEmergencyAborted",e.FRAG_LOADED="hlsFragLoaded",e.FRAG_DECRYPTED="hlsFragDecrypted",e.FRAG_PARSING_INIT_SEGMENT="hlsFragParsingInitSegment",e.FRAG_PARSING_USERDATA="hlsFragParsingUserdata",e.FRAG_PARSING_METADATA="hlsFragParsingMetadata",e.FRAG_PARSED="hlsFragParsed",e.FRAG_BUFFERED="hlsFragBuffered",e.FRAG_CHANGED="hlsFragChanged",e.FPS_DROP="hlsFpsDrop",e.FPS_DROP_LEVEL_CAPPING="hlsFpsDropLevelCapping",e.MAX_AUTO_LEVEL_UPDATED="hlsMaxAutoLevelUpdated",e.ERROR="hlsError",e.DESTROYING="hlsDestroying",e.KEY_LOADING="hlsKeyLoading",e.KEY_LOADED="hlsKeyLoaded",e.LIVE_BACK_BUFFER_REACHED="hlsLiveBackBufferReached",e.BACK_BUFFER_REACHED="hlsBackBufferReached",e.STEERING_MANIFEST_LOADED="hlsSteeringManifestLoaded",e.ASSET_LIST_LOADING="hlsAssetListLoading",e.ASSET_LIST_LOADED="hlsAssetListLoaded",e.INTERSTITIALS_UPDATED="hlsInterstitialsUpdated",e.INTERSTITIALS_BUFFERED_TO_BOUNDARY="hlsInterstitialsBufferedToBoundary",e.INTERSTITIAL_ASSET_PLAYER_CREATED="hlsInterstitialAssetPlayerCreated",e.INTERSTITIAL_STARTED="hlsInterstitialStarted",e.INTERSTITIAL_ASSET_STARTED="hlsInterstitialAssetStarted",e.INTERSTITIAL_ASSET_ENDED="hlsInterstitialAssetEnded",e.INTERSTITIAL_ASSET_ERROR="hlsInterstitialAssetError",e.INTERSTITIAL_ENDED="hlsInterstitialEnded",e.INTERSTITIALS_PRIMARY_RESUMED="hlsInterstitialsPrimaryResumed",e.PLAYOUT_LIMIT_REACHED="hlsPlayoutLimitReached",e.EVENT_CUE_ENTER="hlsEventCueEnter",e))({});var Nn="manifest",Un="level",Bn="audioTrack",$n="subtitleTrack",Os="main",Vn="audio",Gn="subtitle";class Bu{constructor(e,t=0,r=0){this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=e,this.alpha_=e?Math.exp(Math.log(.5)/e):0,this.estimate_=t,this.totalWeight_=r}sample(e,t){var r=Math.pow(this.alpha_,e);this.estimate_=t*(1-r)+r*this.estimate_,this.totalWeight_+=e}getTotalWeight(){return this.totalWeight_}getEstimate(){if(this.alpha_){var e=1-Math.pow(this.alpha_,this.totalWeight_);if(e)return this.estimate_/e}return this.estimate_}}class $u{constructor(e,t,r,i=100){this.defaultEstimate_=void 0,this.minWeight_=void 0,this.minDelayMs_=void 0,this.slow_=void 0,this.fast_=void 0,this.defaultTTFB_=void 0,this.ttfb_=void 0,this.defaultEstimate_=r,this.minWeight_=.001,this.minDelayMs_=50,this.slow_=new Bu(e),this.fast_=new Bu(t),this.defaultTTFB_=i,this.ttfb_=new Bu(e)}update(e,t){var{slow_:r,fast_:i,ttfb_:s}=this;r.halfLife!==e&&(this.slow_=new Bu(e,r.getEstimate(),r.getTotalWeight())),i.halfLife!==t&&(this.fast_=new Bu(t,i.getEstimate(),i.getTotalWeight())),s.halfLife!==e&&(this.ttfb_=new Bu(e,s.getEstimate(),s.getTotalWeight()))}sample(e,t){e=(e=Math.max(e,this.minDelayMs_))/1e3,t=8*t/e;this.fast_.sample(e,t),this.slow_.sample(e,t)}sampleTTFB(e){var t=e/1e3,t=Math.sqrt(2)*Math.exp(-Math.pow(t,2)/2);this.ttfb_.sample(t,Math.max(e,5))}canEstimate(){return this.fast_.getTotalWeight()>=this.minWeight_}getEstimate(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_}getEstimateTTFB(){return this.ttfb_.getTotalWeight()>=this.minWeight_?this.ttfb_.getEstimate():this.defaultTTFB_}get defaultEstimate(){return this.defaultEstimate_}destroy(){}}function Hn(e,t,r){(t=(e=>"symbol"==typeof(e=((e,t)=>{if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return("string"===t?String:Number)(e);if("object"!=typeof(r=r.call(e,t)))return r;throw new TypeError("@@toPrimitive must return a primitive value.")})(e,"string"))?e:e+"")(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}function Ms(){return(Ms=Object.assign?Object.assign.bind():function(e){for(var t=1;t`):v)}let Nr=zn(),j=Nr;function Yn(e=!0){if("undefined"!=typeof self)return(e||!self.MediaSource)&&self.ManagedMediaSource||self.MediaSource||self.WebKitMediaSource}function Wn(e,t){e=Object.keys(e);let r=Object.keys(t);var t=e.length,i=r.length;return!t||!i||t===i&&!e.some(e=>-1===r.indexOf(e))}function qn(e,t=!1){var r,i;if("undefined"!=typeof TextDecoder)return r=new TextDecoder("utf-8").decode(e),t?-1!==(i=r.indexOf("\0"))?r.substring(0,i):r:r.replace(/\0/g,"");var s,a,n=e.length;let o,l="",h=0;for(;h>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:l+=String.fromCharCode(s);break;case 12:case 13:o=e[h++],l+=String.fromCharCode((31&s)<<6|63&o);break;case 14:o=e[h++],a=e[h++],l+=String.fromCharCode((15&s)<<12|(63&o)<<6|(63&a)<<0)}}return l}let b={hexDump:function(r){let i="";for(let t=0;t>24,e[t+1]=r>>16&255,e[t+2]=r>>8&255,e[t+3]=255&r}function $s(t,r){var i=[];if(r.length){var s=t.byteLength;for(let e=0;e{let t=e.subarray(8),r=t.subarray(86),i=Us(t.subarray(4,8)),s=i,a,n="enca"===i||"encv"===i;n&&(e=$s(t,[i])[0],$s(e.subarray("enca"===i?28:78),["sinf"]).forEach(e=>{var t=$s(e,["schm"])[0];!t||"cbcs"!==(t=Us(t.subarray(4,8)))&&"cenc"!==t||(t=$s(e,["frma"])[0])&&(s=Us(t))}));var o=s;switch(s){case"avc1":case"avc2":case"avc3":case"avc4":var l=$s(r,["avcC"])[0];l&&3>3;31===t&&(t+=1+((7&d)<<3)+((224&h[e])>>5)),s+="."+t}break;case"hvc1":case"hev1":h=$s(r,["hvcC"])[0];if(h&&12>6],p=31&u,g=Bs(h,2),u=(32&u)>>5?"H":"L",m=h[12],v=h.subarray(6,12);s=(s=(s+="."+f+p)+("."+g.toString(16).toUpperCase()))+("."+u+m);let t="";for(let e=v.length;e--;){var y=v[e];(y||t)&&(y=y.toString(16).toUpperCase(),t="."+y+t)}s+=t}a=uo("hev1"==o?"dvhe":"dvh1",r);break;case"dvh1":case"dvhe":case"dvav":case"dva1":case"dav1":s=uo(s,r)||s;break;case"vp09":f=$s(r,["vpcC"])[0];f&&6>4&15,s+="."+go(p)+"."+go(g)+"."+go(u));break;case"av01":var b,E,T,_,S,A,w,L,m=$s(r,["av1C"])[0];m&&2>>5,E=31&m[1],T=m[2]>>>7?"H":"M",S=(64&m[2])>>6,_=(32&m[2])>>5,_=2==b&&S?_?12:10:S?10:8,S=(16&m[2])>>4,A=(8&m[2])>>3,w=(4&m[2])>>2,L=3&m[2],0,s+="."+b+"."+go(E)+T+"."+go(_)+"."+S+"."+A+w+L+".01.01.01.0",a=uo("dav1",r))}return{codec:s,encrypted:n,supplemental:a}})($s(n,["mdia","minf","stbl","stsd"])[0]),a?(r[o]={timescale:i,type:a,stsd:n},r[a]=Fs({timescale:i,id:o},n)):r[o]={timescale:i,type:s,stsd:n})}return $s(e,["moov","mvex","trex"]).forEach(e=>{var t=Bs(e,4),t=r[t];t&&(t.default={duration:Bs(e,12),flags:Bs(e,20)})}),r}function uo(e,t){var r=$s(t,["dvvC"]),r=(r.length?r:$s(t,["dvcC"]))[0];if(r)return t=r[2]>>1&127,r=r[2]<<5&32|r[3]>>3&31,e+"."+go(t)+"."+go(r)}function fo(e,t){for(var r=t+5;128&e[t++]&&t{let r=Bs(t,0),i=8,s=(1&r&&(i+=4),4&r&&(i+=4),0),a=Bs(t,4);for(let e=0;e{var r=[],e=t[0];let i=8;var s=Bs(t,i);i+=4;let a=0,n=0,o=(0===e?(a=Bs(t,i),n=Bs(t,i+4),i+=8):(a=oo(t,i),n=oo(t,i+8),i+=16),i+=2,t.length+n);var l=no(t,i);i+=2;for(let e=0;e>>31)return j.warn("SIDX has hierarchical references (not supported)"),null;d=Bs(t,h);h+=4,r.push({referenceSize:c,subsegmentDuration:d,info:{duration:d/s,start:o,end:o+c-1}}),o+=c,h+=4,i=h}return{earliestPresentationTime:a,timescale:s,version:e,referencesCount:l,references:r}})(p[e]);null!=m&&m.references&&(t=Math.min(t,m.earliestPresentationTime/m.timescale),g=m.references.reduce((e,t)=>e+t.info.duration||0,0),r=Math.max(r,g+m.earliestPresentationTime/m.timescale),i=r-t)}if(i&&H(i))return i}return i||s}function yo(e,t){var r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r}function bo(E,T){let _=[],S=T.samples,A=T.timescale,h=T.id,w=!1;return $s(S,["moof"]).map(e=>{let b=e.byteOffset-8;$s(e,["traf"]).map(l=>{var e=$s(l,["tfdt"]).map(e=>{var t=e[0];let r=Bs(e,4);return(r=1===t?(r*=Math.pow(2,32))+Bs(e,8):r)/A})[0];return void 0!==e&&(E=e),$s(l,["tfhd"]).map(e=>{var t=Bs(e,4),r=16777215&Bs(e,0),i=0!=(1&r),s=0!=(2&r),a=0!=(8&r);let v=0;var n=0!=(16&r);let y=0;r=0!=(32&r);let o=8;t===h&&(i&&(o+=8),s&&(o+=4),a&&(v=Bs(e,o),o+=4),n&&(y=Bs(e,o),o+=4),r&&(o+=4),"video"===T.type&&(w=Eo(T.codec)),$s(l,["trun"]).map(t=>{var r=t[0],e=16777215&Bs(t,0);let i=0;var s=0!=(256&e);let a=0;var n=0!=(512&e);let o=0;var l=0!=(1024&e),h=0!=(2048&e);let d=0;var c,u,f=Bs(t,4);let p=8,g=(0!=(1&e)&&(i=Bs(t,p),p+=4),0!=(4&e)&&(p+=4),i+b);for(let e=0;e>1&63)||40==c:6==(31&u))&&To(S.subarray(g,g+m),w?2:1,E+d/A,_),g+=m,e+=m+4}}E+=a/A}}))})})}),_}function Eo(e){return!!e&&("hvc1"===(e=e.substring(0,4))||"hev1"===e||"dvh1"===e||"dvhe"===e)}function To(e,t,r,i){var s=_o(e);let a=0,n=(a+=t,0),o=0,l=0;for(;a=s.length)&&(l=s[a++],n+=l,255===l););for(o=0;!(a>=s.length)&&(l=s[a++],o+=l,255===l););var h=s.length-a;let t=a;if(oh){j.error(`Malformed SEI payload. ${o} is too small, only ${h} bytes left to parse.`);break}if(4===n){if(181===s[t++]){h=no(s,t);if(t+=2,49===h){h=Bs(s,t);if(t+=4,1195456820===h){h=s[t++];if(3===h){var d=s[t++],c=64&d,u=c?2+3*(31&d):0,f=new Uint8Array(u);if(c){f[0]=d;for(let e=1;e>24&255,d[1]=e>>16&255,d[2]=e>>8&255,d[3]=255&e,d.set(o,4),t=0,e=8;t{var t=e.getUint32(0),r=e.byteOffset,i=e.byteLength;if(i>>24)&&1!=s)return{offset:r,size:t};let a=e.buffer,n=b.hexDump(new Uint8Array(a,r+12,16)),o=e.getUint32(28),l=null,h=null;if(0==s){if(t-32/\(Windows.+Firefox\//i.test(navigator.userAgent),Gr={audio:{a3ds:1,"ac-3":.95,"ac-4":1,alac:.9,alaw:1,dra1:1,"dts+":1,"dts-":1,dtsc:1,dtse:1,dtsh:1,"ec-3":.9,enca:1,fLaC:.9,flac:.9,FLAC:.9,g719:1,g726:1,m4ae:1,mha1:1,mha2:1,mhm1:1,mhm2:1,mlpa:1,mp4a:1,"raw ":1,Opus:1,opus:1,samr:1,sawb:1,sawp:1,sevc:1,sqcp:1,ssmv:1,twos:1,ulaw:1},video:{avc1:1,avc2:1,avc3:1,avc4:1,avcp:1,av01:.8,dav1:.8,drac:1,dva1:1,dvav:1,dvh1:.7,dvhe:.7,encv:1,hev1:.75,hvc1:.75,mjp2:1,mp4v:1,mvc1:1,mvc2:1,mvc3:1,mvc4:1,resv:1,rv60:1,s263:1,svc1:1,svc2:1,"vc-1":1,vp08:1,vp09:.9},text:{stpp:1,wvtt:1}};function wo(e,t){t=Gr[t];return!!t&&!!t[e.slice(0,4)]}function Lo(e,t,r=!0){return!e.split(",").some(e=>!ko(e,t,r))}function ko(e,t,r=!0){var r=Yn(r);return null!=(r=null==r?void 0:r.isTypeSupported(Ro(e,t)))&&r}function Ro(e,t){return t+"/mp4;codecs="+e}function Io(e){return e?(e=e.substring(0,4),Gr.video[e]):2}function Co(e){let i=Vr();return e.split(",").reduce((e,t)=>{var r=i&&Eo(t)?9:Gr.video[t];return r?(2*r+e)/(e?3:2):(Gr.audio[t]+e)/(e?2:1)},0)}let Hr={},jr=/flac|opus|mp4a\.40\.34/i;function Po(e,a=!0){return e.replace(jr,e=>{var[t,r=!0]=[e.toLowerCase(),a];if(Hr[t])return Hr[t];var i,s={flac:["flac","fLaC","FLAC"],opus:["opus","Opus"],"mp4a.40.34":["mp3"]}[t];for(let e=0;e!1};return{mpeg:e.isTypeSupported("audio/mpeg"),mp3:e.isTypeSupported('audio/mp4; codecs="mp3"'),ac3:e.isTypeSupported('audio/mp4; codecs="ac-3"')}}function Oo(e){return e.replace(/^.+codecs=["']?([^"']+).*$/,"$1")}let zr={supported:!0,configurations:[],decodingInfoResults:[{supported:!0,powerEfficient:!0,smooth:!0}]};function Mo(e,t){return{supported:!1,configurations:t,decodingInfoResults:[{supported:!1,smooth:!1,powerEfficient:!1}],error:e}}let Kr={};function Fo(e,r,i){var s=e.videoCodec;let a=e.audioCodec;if(!s&&!a||!i)return Promise.resolve(zr);let n=[];if(s){let t={width:e.width,height:e.height,bitrate:Math.ceil(Math.max(.9*e.bitrate,e.averageBitrate)),framerate:e.frameRate||30};var o=e.videoRange,o=("SDR"!==o&&(t.transferFunction=o.toLowerCase()),s.split(",")),s=navigator.userAgent;if(o.some(e=>Eo(e))&&Vr())return Promise.resolve(Mo(new Error(`Overriding Windows Firefox HEVC MediaCapabilities result based on user-agent sting: (${s})`),n));n.push.apply(n,o.map(e=>({type:"media-source",video:Fs(Fs({},t),{},{contentType:Ro((e=>{if(e.startsWith("av01.")){var t=e.split("."),r=["0","111","01","01","01","0"];for(let e=t.length;4{var e;t&&null!=(e=r.groups[t])&&e.tracks.forEach(e=>{if(e.groupId===t){e=e.channels||"";let t=parseFloat(e);H(t)&&2({type:"media-source",audio:{contentType:Ro(e,"audio"),channels:""+t}})))}})}),Promise.all(n.map(e=>{var t=(e=>{var{audio:e,video:t}=e,r=t||e;if(r){r=Oo(r.contentType);if(t)return`r${t.height}x${t.width}f${Math.ceil(t.framerate)}${t.transferFunction||"sd"}_${r}_`+Math.ceil(t.bitrate/1e5);if(e)return`c${e.channels}${e.spatialRendering?"s":"n"}_`+r}return""})(e);return Kr[t]||(Kr[t]=i.decodingInfo(e))})).then(e=>({supported:!e.some(e=>!e.supported),configurations:n,decodingInfoResults:e})).catch(e=>({supported:!1,configurations:n,decodingInfoResults:[],error:e}))}let Yr=["NONE","TYPE-0","TYPE-1",null],Wr=["SDR","PQ","HLG"];var No="",Uo="YES",Bo="v2";function $o(e){var{canSkipUntil:e,canSkipDateRanges:t,age:r}=e;return e&&r!!e).map(e=>e.substring(0,4)).join(","),"supplemental"in e&&(this.supplemental=e.supplemental,t=null==(t=e.supplemental)?void 0:t.videoCodec)&&t!==e.videoCodec&&(this.codecSet+=","+t.substring(0,4)),this.addGroupId("audio",e.attrs.AUDIO),this.addGroupId("text",e.attrs.SUBTITLES)}get maxBitrate(){return Math.max(this.realBitrate,this.bitrate)}get averageBitrate(){return this._avgBitrate||this.realBitrate||this.bitrate}get attrs(){return this._attrs[0]}get codecs(){return this.attrs.CODECS||""}get pathwayId(){return this.attrs["PATHWAY-ID"]||"."}get videoRange(){return this.attrs["VIDEO-RANGE"]||"SDR"}get score(){return this.attrs.optionalFloat("SCORE",0)}get uri(){return this.url[0]||""}hasAudioGroup(e){return Vo(this._audioGroups,e)}hasSubtitleGroup(e){return Vo(this._subtitleGroups,e)}get audioGroups(){return this._audioGroups}get subtitleGroups(){return this._subtitleGroups}addGroupId(e,t){if(t)if("audio"===e){let e=this._audioGroups;-1===(e=e||(this._audioGroups=[])).indexOf(t)&&e.push(t)}else if("text"===e){let e=this._subtitleGroups;-1===(e=e||(this._subtitleGroups=[])).indexOf(t)&&e.push(t)}}get urlId(){return 0}set urlId(e){}get audioGroupIds(){return this.audioGroups?[this.audioGroupId]:void 0}get textGroupIds(){return this.subtitleGroups?[this.textGroupId]:void 0}get audioGroupId(){var e;return null==(e=this.audioGroups)?void 0:e[0]}get textGroupId(){var e;return null==(e=this.subtitleGroups)?void 0:e[0]}addFallback(){}}function Vo(e,t){return!(!t||!e)&&-1!==e.indexOf(t)}function Go(e,t){let r=!1,i=[];return e&&(r="SDR"!==e,i=[e]),!t||(e="SDR"!==(i=t.allowedVideoRanges||Wr.slice(0)).join("")&&!t.videoCodec,r=void 0!==t.preferHDR?t.preferHDR:e&&(()=>{if("function"==typeof matchMedia){var e=matchMedia("(dynamic-range: high)"),t=matchMedia("bad query");if(e.media!==t.media)return!0===e.matches}return!1})())||(i=["SDR"]),{preferHDR:r,allowedVideoRanges:i}}let qr=r=>{let i=new WeakSet;return(e,t)=>{if("object"==typeof(t=r?r(e,t):t)&&null!==t){if(i.has(t))return;i.add(t)}return t}},$=(e,t)=>JSON.stringify(e,qr(t));function Ho(e,t){j.log(`[abr] start candidates with "${e}" ignored because `+t)}function jo(e){return e.reduce((e,t)=>{let r=e.groups[t.groupId];(r=r||(e.groups[t.groupId]={tracks:[],channels:{2:0},hasDefault:!1,hasAutoSelect:!1})).tracks.push(t);var i=t.channels||"2";return r.channels[i]=(r.channels[i]||0)+1,r.hasDefault=r.hasDefault||t.default,r.hasAutoSelect=r.hasAutoSelect||t.autoselect,r.hasDefault&&(e.hasDefaultAudio=!0),r.hasAutoSelect&&(e.hasAutoSelectAudio=!0),e},{hasDefaultAudio:!1,hasAutoSelectAudio:!1,groups:{}})}function zo(e){var t,r,i,s,a;return e&&({lang:t,assocLang:r,characteristics:i,channels:s,audioCodec:a}=e,{lang:t,assocLang:r,characteristics:i,channels:s,audioCodec:a})}function Ko(t,r,i){if("attrs"in t){var e=r.indexOf(t);if(-1!==e)return e}for(let e=0;e{let r=e.split(","),i=t.split(",");return r.length===i.length&&!r.some(e=>-1===i.indexOf(e))})(e.characteristics||"",t.characteristics))&&(void 0===r||r(e,t))}function Wo(e,t){var{audioCodec:e,channels:r}=e;return!(void 0!==e&&(t.audioCodec||"").substring(0,4)!==e.substring(0,4)||void 0!==r&&r!==(t.channels||"2"))}function qo(t,r,i){for(let e=r;-1{let s,{fragCurrent:a,partCurrent:n,hls:o}=this;var{autoLevelEnabled:l,media:h}=o;if(a&&h){var d=performance.now(),c=(n||a).stats,u=(n||a).duration,d=d-c.loading.start;let i=o.minAutoLevel;var f=a.level,p=this._nextAutoLevel;if(c.aborted||c.loaded&&c.loaded===c.total||f<=i)this.clearTimer(),this._nextAutoLevel=-1;else if(l){l=-1i;r--){var A=y[r].maxBitrate,w=!y[r].details||S;if((e=this.getTimeToLoadFrag(T,_,u*A,w))=b||e>10*u||(h?this.bwEstimator.sample(d-Math.min(p,g),c.loaded):this.bwEstimator.sampleTTFB(d),t=y[r].maxBitrate,this.getBwEstimate()*E>t&&this.resetEstimator(t),-1<(h=this.findBestLevel(t,i,r,0,m,1,1))&&(r=h),this.warn(`Fragment ${a.sn}${n?" part "+n.index:""} of level ${f} is loading too slowly; Fragment duration: ${a.duration.toFixed(3)} Time to underbuffer: ${m.toFixed(3)} s Estimated load time for current fragment: ${b.toFixed(3)} s Estimated load time for down switch fragment: ${e.toFixed(3)} s TTFB estimate: ${0|g} ms Current BW estimate: ${H(v)?0|v:"Unknown"} bps New BW estimate: ${0|this.getBwEstimate()} bps Switching to level ${r} @ ${0|t} bps`),o.nextLoadLevel=o.nextAutoLevel=r,this.clearTimer(),p=()=>{if(this.clearTimer(),this.fragCurrent===a&&this.hls.loadLevel===r&&0i){let e=this.findBestLevel(this.hls.levels[i].bitrate,i,r,0,t,1,1);-1===e&&(e=i),this.hls.nextLoadLevel=this.hls.nextAutoLevel=e,this.resetEstimator(this.hls.levels[e].bitrate)}}},l||b>2*e?p():this.timer=self.setInterval(p,1e3*e),o.trigger(X.FRAG_LOAD_EMERGENCY_ABORTED,{frag:a,part:n,stats:c}))}}}}}}},this.hls=e,this.bwEstimator=this.initEstimator(),this.registerListeners()}resetEstimator(e){e&&(this.log("setting initial bwe to "+e),this.hls.config.abrEwmaDefaultEstimate=e),this.firstSelection=-1,this.bwEstimator=this.initEstimator()}initEstimator(){var e=this.hls.config;return new $u(e.abrEwmaSlowVoD,e.abrEwmaFastVoD,e.abrEwmaDefaultEstimate)}registerListeners(){var e=this.hls;e.on(X.MANIFEST_LOADING,this.onManifestLoading,this),e.on(X.FRAG_LOADING,this.onFragLoading,this),e.on(X.FRAG_LOADED,this.onFragLoaded,this),e.on(X.FRAG_BUFFERED,this.onFragBuffered,this),e.on(X.LEVEL_SWITCHING,this.onLevelSwitching,this),e.on(X.LEVEL_LOADED,this.onLevelLoaded,this),e.on(X.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(X.MAX_AUTO_LEVEL_UPDATED,this.onMaxAutoLevelUpdated,this),e.on(X.ERROR,this.onError,this)}unregisterListeners(){var e=this.hls;e&&(e.off(X.MANIFEST_LOADING,this.onManifestLoading,this),e.off(X.FRAG_LOADING,this.onFragLoading,this),e.off(X.FRAG_LOADED,this.onFragLoaded,this),e.off(X.FRAG_BUFFERED,this.onFragBuffered,this),e.off(X.LEVEL_SWITCHING,this.onLevelSwitching,this),e.off(X.LEVEL_LOADED,this.onLevelLoaded,this),e.off(X.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(X.MAX_AUTO_LEVEL_UPDATED,this.onMaxAutoLevelUpdated,this),e.off(X.ERROR,this.onError,this))}destroy(){this.unregisterListeners(),this.clearTimer(),this.hls=this._abandonRulesCheck=null,this.fragCurrent=this.partCurrent=null}onManifestLoading(e,t){this.lastLoadedFragLevel=-1,this.firstSelection=-1,this.lastLevelLoadSec=0,this.fragCurrent=this.partCurrent=null,this.onLevelsUpdated(),this.clearTimer()}onLevelsUpdated(){-1Math.max(e,t)&&r[e].loadError<=r[t].loadError)return e}return this._nextAutoLevel=t,this.nextAutoLevelKey=this.getAutoLevelKey(),t}getAutoLevelKey(){return this.getBwEstimate()+"_"+this.getStarvationDelay().toFixed(2)}getNextABRAutoLevel(){var{fragCurrent:e,partCurrent:t,hls:r}=this;if(r.levels.length<=1)return r.loadLevel;var{maxAutoLevel:i,config:s,minAutoLevel:a}=r,t=t?t.duration:e?e.duration:0,e=this.getBwEstimate(),n=this.getStarvationDelay();let o=s.abrBandWidthFactor,l=s.abrBandWidthUpFactor;if(n){var h=this.findBestLevel(e,a,i,n,0,o,l);if(0<=h)return this.rebufferNotice=-1,h}let d=t?Math.min(t,s.maxStarvationDelay):s.maxStarvationDelay;n||(h=this.bitrateTestDelay)&&(t=t?Math.min(t,s.maxLoadingDelay):s.maxLoadingDelay,d=t-h,this.info(`bitrate test took ${Math.round(1e3*h)}ms, set first fragment max fetchDuration to ${Math.round(1e3*d)} ms`),o=l=1);s=this.findBestLevel(e,a,i,n,d,o,l);return this.rebufferNotice!==s&&(this.rebufferNotice=s,this.info(`${n?"rebuffering expected":"buffer is empty"}, optimal quality level `+s)),-1{var a=Object.keys(i);let n=null==t?void 0:t.channels,o=null==t?void 0:t.audioCodec,l=null==r?void 0:r.videoCodec,h=n&&2===parseInt(n),d=!1,c=!1,u=1/0,f=1/0,p=1/0,g=1/0,m=0,v=[],{preferHDR:y,allowedVideoRanges:b}=Go(e,r);for(let e=a.length;e--;){let t=i[a[e]];d=d||00{let r=i[t];if(t===e)return e;if(v=c?b.filter(e=>0s)return Ho(t,`min bitrate of ${r.minBitrate} > current estimate of `+s),e;if(!r.hasDefaultAudio)return Ho(t,"no renditions with default or auto-select sound found"),e;if(o&&t.indexOf(o.substring(0,4))%5!=0)return Ho(t,`audio codec preference "${o}" not found`),e;if(n&&!h){if(!r.channels[n])return Ho(t,`no renditions with ${n} channel sound found (channels options: ${Object.keys(r.channels)})`),e}else if((!o||h)&&d&&0===r.channels[2])return Ho(t,"no renditions with stereo sound found"),e;if(r.minHeight>E)return Ho(t,`min resolution of ${r.minHeight} > maximum of `+E),e;if(r.minFramerate>T)return Ho(t,`min framerate of ${r.minFramerate} > maximum of `+T),e;if(!v.some(e=>0=Co(e)||r.fragmentError>i[e].fragmentError)?e:(g=r.minIndex,m=r.maxScore,t)},void 0),videoRanges:v,preferHDR:y,minFramerate:f,minBitrate:p,minIndex:g}})(this.codecTiers||(this.codecTiers=(_=w,f.slice(e,s+1).reduce((e,t,i)=>{if(t.codecSet){var s=t.audioGroups;let r=e[t.codecSet];r||(e[t.codecSet]=r={minBitrate:1/0,minHeight:1/0,minFramerate:1/0,minIndex:i,maxScore:0,videoRanges:{SDR:0},channels:{2:0},hasDefaultAudio:!s,fragmentError:0}),r.minBitrate=Math.min(r.minBitrate,t.bitrate);var a=Math.min(t.height,t.width);r.minHeight=Math.min(r.minHeight,a),r.minFramerate=Math.min(r.minFramerate,t.frameRate),r.minIndex=Math.min(r.minIndex,i),r.maxScore=Math.max(r.maxScore,t.score),r.fragmentError+=t.fragmentError,r.videoRanges[t.videoRange]=(r.videoRanges[t.videoRange]||0)+1,s&&s.forEach(e=>{if(e){let t=_.groups[e];t&&(r.hasDefaultAudio=r.hasDefaultAudio||_.hasDefaultAudio?t.hasDefault:t.hasAutoSelect||!_.hasDefaultAudio&&!_.hasAutoSelectAudio,Object.keys(t.channels).forEach(e=>{r.channels[e]=(r.channels[e]||0)+t.channels[e]}))}})}return e},{}))),E,r,S,A),{codecSet:A,videoRanges:k,minFramerate:F,minBitrate:N,minIndex:U,preferHDR:B}=i;L=U,b=A,E=B?k[k.length-1]:k[0],T=F,r=Math.max(r,N),this.log("picked start tier "+$(i))}else b=null==m?void 0:m.codecSet,E=null==m?void 0:m.videoRange;var R=u?u.duration:t?t.duration:0,I=this.bwEstimator.getEstimateTTFB()/1e3,C=[];for(let t=s;t>=e;t--){let e,i=f[t];var P=t>c;if(i)if(!g.useMediaCapabilities||i.supportedResult||i.supportedPromise||("function"==typeof(null==(D=navigator.mediaCapabilities)?void 0:D.decodingInfo)&&(((e,i,t,r,s,a)=>{var n=e.audioCodec?e.audioGroups:null,o=null==a?void 0:a.audioCodec;let l=(a=null==a?void 0:a.channels)?parseInt(a):o?1/0:2,h=null;if(null!=n&&n.length)try{h=1===n.length&&n[0]?i.groups[n[0]].channels:n.reduce((r,e)=>{if(e){let t=i.groups[e];if(!t)throw new Error(`Audio track group ${e} not found`);Object.keys(t.channels).forEach(e=>{r[e]=(r[e]||0)+t.channels[e]})}return r},{2:0})}catch(e){return 1}return void 0!==e.videoCodec&&(1920Math.max(r,30)||"SDR"!==e.videoRange&&e.videoRange!==t||e.bitrate>Math.max(s,8e6))||h&&H(l)&&Object.keys(h).some(e=>parseInt(e)>l)})(i,w,E,T,r,S)||Eo(i.videoCodec))?(i.supportedPromise=Fo(i,w,D),i.supportedPromise.then(e=>{var t,r;this.hls&&(i.supportedResult=e,r=(t=this.hls.levels).indexOf(i),e.error?this.warn(`MediaCapabilities decodingInfo error: "${e.error}" for level ${r} `+$(e)):e.supported||(this.warn(`Unsupported MediaCapabilities decodingInfo result for level ${r} `+$(e)),-1i.frameRate||!P&&0=P&&(t===d||0===i.loadError&&0===i.fragmentError)&&(M<=I||!H(M)||v&&!this.bitrateTestDelay||M${t} adjustedbw(${Math.round(e)})-bitrate=${Math.round(e-P)} ttfb:${I.toFixed(1)} avgDuration:${x.toFixed(1)} maxFetchDuration:${h.toFixed(1)} fetchDuration:${M.toFixed(1)} firstSelection:${y} codecSet:${i.codecSet} videoRange:${i.videoRange} hls.loadLevel:`+p)),y&&(this.firstSelection=t),t}else C.push(t)}return-1}set nextAutoLevel(e){e=this.deriveNextAutoLevel(e);this._nextAutoLevel!==e&&(this.nextAutoLevelKey="",this._nextAutoLevel=e)}deriveNextAutoLevel(e){var{maxAutoLevel:t,minAutoLevel:r}=this.hls;return Math.min(Math.max(e,r),t)}}let Xr={search:function(e,t){let r=0,i=e.length-1;for(;r<=i;){var s,a,n=t(a=e[s=(r+i)/2|0]);if(0(t=1e3*Math.min(t,r.duration+(r.deltaPTS||0)),r=r.endProgramDateTime||0,e{if(t&&0===t.start&&t.level("INF"===t[0]&&(e+=parseFloat(t[1])),e),r),e.start<=t})(a,e,Math.min(s,i)))||!(n=Xr.search(t,Jo.bind(null,r,i)))||n===e&&a?a:n}function Jo(e=0,t=0,r){return r.start<=e&&r.start+r.duration>e?0:(t=Math.min(t,r.duration+(r.deltaPTS||0)),r.start+r.duration-t<=e?1:r.start-t>e&&r.start?-1:0)}function el(e,t){return Xr.search(e,e=>e.cct?-1:0)}function tl(e){switch(e.details){case q.FRAG_LOAD_TIMEOUT:case q.KEY_LOAD_TIMEOUT:case q.LEVEL_LOAD_TIMEOUT:case q.MANIFEST_LOAD_TIMEOUT:return!0}return!1}function rl(e,t){t=tl(t);return e.default[`${t?"timeout":"error"}Retry`]}function il(e,t){t="linear"===e.backoff?1:Math.pow(2,t);return Math.min(t*e.retryDelayMs,e.maxRetryDelayMs)}function sl(e){return Fs(Fs({},e),{errorRetry:null,timeoutRetry:null})}function al(e,t,r,i){var s;return!!e&&(s=null==i?void 0:i.code,s=te+t.fragmentError,0);if(i&&(e.details!==q.FRAG_GAP&&i.fragmentError++,al(a,s,tl(e),e.response)))return{action:hl,flags:dl,retryConfig:a,retryCount:s};t=this.getLevelSwitchAction(e,r);return a&&(t.retryConfig=a,t.retryCount=s),t}getLevelSwitchAction(i,e){var t=this.hls;null==e&&(e=t.loadLevel);let s=this.hls.levels[e];if(s){var a=i.details;s.loadError++,a===q.BUFFER_APPEND_ERROR&&s.fragmentError++;let r=-1;var{levels:n,loadLevel:o,minAutoLevel:l,maxAutoLevel:h}=t,d=(t.autoLevelEnabled||(t.loadLevel=-1),null==(e=i.frag)?void 0:e.type),c=(d===Vn&&a===q.FRAG_PARSING_ERROR||"audio"===i.sourceBufferName&&(a===q.BUFFER_ADD_CODEC_ERROR||a===q.BUFFER_APPEND_ERROR))&&n.some(({audioCodec:e})=>s.audioCodec!==e),u="video"===i.sourceBufferName&&(a===q.BUFFER_ADD_CODEC_ERROR||a===q.BUFFER_APPEND_ERROR)&&n.some(({codecSet:e,audioCodec:t})=>s.codecSet!==e&&s.audioCodec===t),{type:f,groupId:p}=null!=(e=i.context)?e:{};for(let e=n.length;e--;){var g,m=(e+o)%n.length;if(m!==o&&l<=m&&m<=h&&0===n[m].loadError){let t=n[m];if(a===q.FRAG_GAP&&d===Os&&i.frag){var v=n[m].details;if(v){var v=Zo(i.frag,v.fragments,i.frag.start);if(null!=v&&v.gap)continue}}else{if(f===Bn&&t.hasAudioGroup(p)||f===$n&&t.hasSubtitleGroup(p))continue;if(d===Vn&&null!=(v=s.audioGroups)&&v.some(e=>t.hasAudioGroup(e))||d===Gn&&null!=(g=s.subtitleGroups)&&g.some(e=>t.hasSubtitleGroup(e))||c&&s.audioCodec===t.audioCodec||!c&&s.audioCodec!==t.audioCodec||u&&s.codecSet===t.codecSet)continue}r=m;break}}if(-1{let t=this.fragments[e];!t||n>=t.body.sn||(t.buffered||t.loaded&&!a?(e=t.range[r])&&(0===e.time.length?this.removeFragment(t.body):e.time.some(e=>{e=!this.isTimeBuffered(e.startPTS,e.endPTS,i);return e&&this.removeFragment(t.body),e})):t.body.type===s&&this.removeFragment(t.body))})}detectPartialFragments(n){let o=this.timeRanges;if(o&&"initSegment"!==n.frag.sn){let s=n.frag;var e=bl(s);let a=this.fragments[e];if(!(!a||a.buffered&&s.gap)){let i=!s.relurl;Object.keys(o).forEach(e=>{var t,r=s.elementaryStreams[e];r&&(t=o[e],r=i||!0===r.partial,a.range[e]=this.getBufferedTimes(s,n.part,r,t))}),a.loaded=null,Object.keys(a.range).length?(a.buffered=!0,(a.body.endList=s.endList||a.body.endList)&&(this.endListFragments[a.body.type]=a),yl(a)||this.removeParts(s.sn-1,s.type)):this.removeFragment(a.body)}}}removeParts(t,e){var r=this.activePartLists[e];r&&(this.activePartLists[e]=El(r,e=>e.fragment.sn>=t))}fragBuffered(e,t){var r=bl(e);let i=this.fragments[r];!i&&t&&(i=this.fragments[r]={body:e,appendedPTS:null,loaded:null,buffered:!1,range:Object.create(null)},e.gap)&&(this.hasGaps=!0),i&&(i.loaded=null,i.buffered=!0)}getBufferedTimes(e,t,r,i){var s={time:[],partial:r},a=e.start,n=e.end,o=e.minEndPTS||n,l=e.maxStartPTS||a;for(let e=0;e{e=l[e];e&&yl(e)&&(s=e.body.start-o,a=e.body.end+o,t>=s)&&t<=a&&(i=Math.min(t-s,a-t),n<=i)&&(r=e.body,n=i)}),r}isEndListAppended(e){e=this.endListFragments[e];return void 0!==e&&(e.buffered||yl(e))}getState(e){e=bl(e),e=this.fragments[e];return e?e.buffered?yl(e)?ml:vl:gl:pl}isTimeBuffered(t,r,i){var s,a;for(let e=0;e{var t,e=this.fragments[e];!e||(t=e.body).type!==s||a&&!t.gap||t.startr&&(e.buffered||n)&&this.removeFragment(t)})}removeFragment(e){var t=bl(e),r=(e.clearElementaryStreamInfo(),this.activePartLists[e.type]);if(r){let t=e.sn;this.activePartLists[e.type]=El(r,e=>e.fragment.sn!==t)}delete this.fragments[t],e.endList&&delete this.endListFragments[e.type]}removeAllFragments(){this.fragments=Object.create(null),this.endListFragments=Object.create(null),this.activePartLists=Object.create(null),this.hasGaps=!1;var e=null==(e=this.hls)||null==(e=e.latestLevelDetails)?void 0:e.partList;e&&e.forEach(e=>e.clearElementaryStreamInfo())}}function yl(e){var t;return e.buffered&&(e.body.gap||(null==(t=e.range.video)?void 0:t.partial)||(null==(t=e.range.audio)?void 0:t.partial)||(null==(t=e.range.audiovideo)?void 0:t.partial))}function bl(e){return e.type+`_${e.level}_`+e.sn}function El(e,r){return e.filter(e=>{var t=r(e);return t||e.clearElementaryStreamInfo(),t})}var Tl=0,_l=1;class Qu{constructor(e,t,r){this.subtle=void 0,this.aesIV=void 0,this.aesMode=void 0,this.subtle=e,this.aesIV=t,this.aesMode=r}decrypt(e,t){switch(this.aesMode){case Tl:return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},t,e);case _l:return this.subtle.decrypt({name:"AES-CTR",counter:this.aesIV,length:64},t,e);default:throw new Error("[AESCrypto] invalid aes mode "+this.aesMode)}}}class Zu{constructor(){this.rcon=[0,1,2,4,8,16,32,64,128,27,54],this.subMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.invSubMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.sBox=new Uint32Array(256),this.invSBox=new Uint32Array(256),this.key=new Uint32Array(0),this.ksRows=0,this.keySize=0,this.keySchedule=void 0,this.invKeySchedule=void 0,this.initTable()}uint8ArrayToUint32Array_(e){var t=new DataView(e),r=new Uint32Array(4);for(let e=0;e<4;e++)r[e]=t.getUint32(4*e);return r}initTable(){var e=this.sBox,t=this.invSBox,r=this.subMix,i=r[0],s=r[1],a=r[2],n=r[3],r=this.invSubMix,o=r[0],l=r[1],h=r[2],d=r[3],c=new Uint32Array(256);let u=0,f=0,p=0;for(p=0;p<256;p++)p<128?c[p]=p<<1:c[p]=p<<1^283;for(p=0;p<256;p++){var g=(g=f^f<<1^f<<2^f<<3^f<<4)>>>8^255&g^99,m=c[t[e[u]=g]=u],v=c[m],y=c[v],b=257*c[g]^16843008*g;i[u]=b<<24|b>>>8,s[u]=b<<16|b>>>16,a[u]=b<<8|b>>>24,n[u]=b,b=16843009*y^65537*v^257*m^16843008*u,o[g]=b<<24|b>>>8,l[g]=b<<16|b>>>16,h[g]=b<<8|b>>>24,d[g]=b,u?(u=m^c[c[c[y^m]]],f^=c[c[f]]):u=f=1}}expandKey(s){var a=this.uint8ArrayToUint32Array_(s);let e=!0,t=0;for(;t{var r=ArrayBuffer.isView(i)?i:new Uint8Array(i),r=(this.softwareDecrypt(r,s,a,n),this.flush());r?e(r.buffer):t(new Error("[softwareDecrypt] Failed to decrypt data"))}):this.webCryptoDecrypt(new Uint8Array(i),s,a,n)}softwareDecrypt(e,t,r,i){var{currentIV:s,currentResult:a,remainderData:n}=this;if(i!==Tl||16!==t.byteLength)return j.warn("SoftwareDecrypt: can only handle AES-128-CBC"),null;this.logOnce("JS AES decrypt"),n&&(e=yo(n,e),this.remainderData=null);i=this.getValidChunk(e);if(!i.length)return null;s&&(r=s);let o=this.softwareDecrypter;(o=o||(this.softwareDecrypter=new Zu)).expandKey(t);n=a;return this.currentResult=o.decrypt(i.buffer,0,r),this.currentIV=i.slice(-16).buffer,n||null}webCryptoDecrypt(t,r,i,s){if(this.key!==r||!this.fastAesKey){if(!this.subtle)return Promise.resolve(this.onWebCryptoError(t,r,i,s));this.key=r,this.fastAesKey=new Ju(this.subtle,r,s)}return this.fastAesKey.expandKey().then(e=>this.subtle?(this.logOnce("WebCrypto AES decrypt"),new Qu(this.subtle,new Uint8Array(i),s).decrypt(t.buffer,e)):Promise.reject(new Error("web crypto not initialized"))).catch(e=>(j.warn(`[decrypter]: WebCrypto Error, disable WebCrypto API, ${e.name}: `+e.message),this.onWebCryptoError(t,r,i,s)))}onWebCryptoError(e,t,r,i){var s=this.enableSoftwareAES;if(s){this.useSoftware=!0,this.logEnabled=!0,this.softwareDecrypt(e,t,r,i);e=this.flush();if(e)return e.buffer}throw new Error("WebCrypto"+(s?" and softwareDecrypt":"")+": failed to decrypt data")}getValidChunk(e){let t=e;var r=e.length-e.length%16;return r!==e.length&&(t=e.slice(0,r),this.remainderData=e.slice(r)),t}logOnce(e){this.logEnabled&&(j.log("[decrypter]: "+e),this.logEnabled=!1)}}let Qr=Math.pow(2,17);class tf{constructor(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}destroy(){this.loader&&(this.loader.destroy(),this.loader=null)}abort(){this.loader&&this.loader.abort()}load(o,l){let h=o.url;if(!h)return Promise.reject(new rf({type:W.NETWORK_ERROR,details:q.FRAG_LOAD_ERROR,fatal:!1,frag:o,error:new Error("Fragment does not have a "+(h?"part list":"url")),networkDetails:null}));this.abort();let r=this.config,d=r.fLoader,c=r.loader;return new Promise((a,s)=>{if(this.loader&&this.loader.destroy(),o.gap){if(o.tagList.some(e=>"GAP"===e[0]))return void s(Al(o));o.gap=!1}let n=this.loader=new(d||c)(r);var e=Sl(o),t=(o.loader=n,sl(r.fragLoadPolicy.default));let i={loadPolicy:t,timeout:t.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:"initSegment"===o.sn?1/0:Qr};o.stats=n.stats;t={onSuccess:(e,t,r,i)=>{this.resetLoader(o,n);let s=e.data;r.resetIV&&o.decryptdata&&(o.decryptdata.iv=new Uint8Array(s.slice(0,16)),s=s.slice(16)),a({frag:o,part:null,payload:s,networkDetails:i})},onError:(e,t,r,i)=>{this.resetLoader(o,n),s(new rf({type:W.NETWORK_ERROR,details:q.FRAG_LOAD_ERROR,fatal:!1,frag:o,response:Fs({url:h,data:void 0},e),error:new Error(`HTTP Error ${e.code} `+e.text),networkDetails:r,stats:i}))},onAbort:(e,t,r)=>{this.resetLoader(o,n),s(new rf({type:W.NETWORK_ERROR,details:q.INTERNAL_ABORTED,fatal:!1,frag:o,error:new Error("Aborted"),networkDetails:r,stats:e}))},onTimeout:(e,t,r)=>{this.resetLoader(o,n),s(new rf({type:W.NETWORK_ERROR,details:q.FRAG_LOAD_TIMEOUT,fatal:!1,frag:o,error:new Error(`Timeout after ${i.timeout}ms`),networkDetails:r,stats:e}))}};l&&(t.onProgress=(e,t,r,i)=>l({frag:o,part:null,payload:r,networkDetails:i})),n.load(e,i,t)})}loadPart(l,h,d){this.abort();let t=this.config,r=t.fLoader,c=t.loader;return new Promise((n,o)=>{if(this.loader&&this.loader.destroy(),l.gap||h.gap)o(Al(l,h));else{let s=this.loader=new(r||c)(t),a=Sl(l,h);l.loader=s;var e=sl(t.fragLoadPolicy.default);let i={loadPolicy:e,timeout:e.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:Qr};h.stats=s.stats,s.load(a,i,{onSuccess:(e,t,r,i)=>{this.resetLoader(l,s),this.updateStatsFromPart(l,h);e={frag:l,part:h,payload:e.data,networkDetails:i};d(e),n(e)},onError:(e,t,r,i)=>{this.resetLoader(l,s),o(new rf({type:W.NETWORK_ERROR,details:q.FRAG_LOAD_ERROR,fatal:!1,frag:l,part:h,response:Fs({url:a.url,data:void 0},e),error:new Error(`HTTP Error ${e.code} `+e.text),networkDetails:r,stats:i}))},onAbort:(e,t,r)=>{l.stats.aborted=h.stats.aborted,this.resetLoader(l,s),o(new rf({type:W.NETWORK_ERROR,details:q.INTERNAL_ABORTED,fatal:!1,frag:l,part:h,error:new Error("Aborted"),networkDetails:r,stats:e}))},onTimeout:(e,t,r)=>{this.resetLoader(l,s),o(new rf({type:W.NETWORK_ERROR,details:q.FRAG_LOAD_TIMEOUT,fatal:!1,frag:l,part:h,error:new Error(`Timeout after ${i.timeout}ms`),networkDetails:r,stats:e}))}})}})}updateStatsFromPart(e,t){var r=e.stats,i=t.stats,s=i.total,e=(r.loaded+=i.loaded,s?(s=((e=Math.round(e.duration/t.duration))-(t=Math.min(Math.round(r.loaded/s),e)))*Math.round(r.loaded/t),r.total=r.loaded+s):r.total=Math.max(r.loaded,r.total),r.loading),t=i.loading;e.start?e.first+=t.first-t.start:(e.start=t.start,e.first=t.first),e.end=t.end}resetLoader(e,t){e.loader=null,this.loader===t&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),t.destroy()}}function Sl(r,i=null){var s=i||r,i={frag:r,part:i,responseType:"arraybuffer",url:s.url,headers:{},rangeStart:0,rangeEnd:0},a=s.byteRangeStartOffset,s=s.byteRangeEndOffset;if(H(a)&&H(s)){let e=a,t=s;"initSegment"!==r.sn||"AES-128"!==(r=null==(r=r.decryptdata)?void 0:r.method)&&"AES-256"!==r||((r=s-a)%16&&(t=s+(16-r%16)),0!==a&&(i.resetIV=!0,e=a-16)),i.rangeStart=e,i.rangeEnd=t}return i}function Al(e,t){var r=new Error(`GAP ${e.gap?"tag":"attribute"} found`),r={type:W.MEDIA_ERROR,details:q.FRAG_GAP,fatal:!1,frag:e,error:r,networkDetails:null};return t&&(r.part=t),(t||e).stats.aborted=!0,new rf(r)}class rf extends Error{constructor(e){super(e.error.message),this.data=void 0,this.data=e}}class sf extends Vu{constructor(e,t){super(e,t),this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}destroy(){this.onHandlerDestroying(),this.onHandlerDestroyed()}onHandlerDestroying(){this.clearNextTick(),this.clearInterval()}onHandlerDestroyed(){}hasInterval(){return!!this._tickInterval}hasNextTick(){return!!this._tickTimer}setInterval(e){return!this._tickInterval&&(this._tickCallCount=0,this._tickInterval=self.setInterval(this._boundTick,e),!0)}clearInterval(){return!(!this._tickInterval||(self.clearInterval(this._tickInterval),this._tickInterval=null))}clearNextTick(){return!(!this._tickTimer||(self.clearTimeout(this._tickTimer),this._tickTimer=null))}tick(){this._tickCallCount++,1===this._tickCallCount&&(this.doTick(),10,end:()=>0};class qs{static isBuffered(e,t){if(e){var r=qs.getBuffered(e);for(let e=r.length;e--;)if(t>=r.start(e)&&t<=r.end(e))return!0}return!1}static bufferedRanges(e){return e?(e=qs.getBuffered(e),qs.timeRangesToArray(e)):[]}static timeRangesToArray(t){var r=[];for(let e=0;ee.start-t.start||t.end-e.end);let s=-1,a=[];if(i)for(let e=0;e=t[e].start&&r<=t[e].end&&(s=e);var n,o=a.length;o&&(n=a[o-1].end,t[e].start-nn&&(a[o-1].end=t[e].end):a.push(t[e])}else a=t;let l=0,h,d=r,c=r;for(let e=0;e{var t=e.substring(2,e.length-1),r=null==i?void 0:i[t];return void 0===r?(s.playlistParsingError||(s.playlistParsingError=new Error(`Missing preceding EXT-X-DEFINE tag for Variable Reference: "${t}"`)),e):r})}return e}function Rl(t,e,r){let i=t.variableList;i||(t.variableList=i={});let s,a;if("QUERYPARAM"in e){s=e.QUERYPARAM;try{var n=new self.URL(r).searchParams;if(!n.has(s))throw new Error(`"${s}" does not match any query parameter in URI: "${r}"`);a=n.get(s)}catch(e){t.playlistParsingError||(t.playlistParsingError=new Error("EXT-X-DEFINE QUERYPARAM: "+e.message))}}else s=e.NAME,a=e.VALUE;s in i?t.playlistParsingError||(t.playlistParsingError=new Error(`EXT-X-DEFINE duplicate Variable Name declarations: "${s}"`)):i[s]=a||""}let ei=/^(\d+)x(\d+)$/,ti=/(.+?)=(".*?"|.*?)(?:,|$)/g;class Xs{constructor(e,t){Ms(this,e="string"==typeof e?Xs.parseAttrList(e,t):e)}get clientAttrs(){return Object.keys(this).filter(e=>"X-"===e.substring(0,2))}decimalInteger(e){e=parseInt(this[e],10);return e>Number.MAX_SAFE_INTEGER?1/0:e}hexadecimalInteger(e){if(this[e]){var t=(1&(t=(this[e]||"0x").slice(2)).length?"0":"")+t,r=new Uint8Array(t.length/2);for(let e=0;eNumber.MAX_SAFE_INTEGER?1/0:e}decimalFloatingPoint(e){return parseFloat(this[e])}optionalFloat(e,t){e=this[e];return e?parseFloat(e):t}enumeratedString(e){return this[e]}enumeratedStringList(e,t){e=this[e];return(e?e.split(/[ ,]+/):[]).reduce((e,t)=>(e[t.toLowerCase()]=!0,e),t)}bool(e){return"YES"===this[e]}decimalResolution(e){e=ei.exec(this[e]);if(null!==e)return{width:parseInt(e[1],10),height:parseInt(e[2],10)}}static parseAttrList(r,i){var s={};for(ti.lastIndex=0;null!==(n=ti.exec(r));){var a=n[1].trim();let e=n[2];var n=0===e.indexOf('"')&&e.lastIndexOf('"')===e.length-1;let t=!1;if(n)e=e.slice(1,-1);else switch(a){case"IV":case"SCTE35-CMD":case"SCTE35-IN":case"SCTE35-OUT":t=!0}if(i&&(n||t))e=kl(i,e);else if(!t&&!n)switch(a){case"CLOSED-CAPTIONS":if("NONE"===e)break;case"ALLOWED-CPC":case"CLASS":case"ASSOC-LANGUAGE":case"AUDIO":case"BYTERANGE":case"CHANNELS":case"CHARACTERISTICS":case"CODECS":case"DATA-ID":case"END-DATE":case"GROUP-ID":case"ID":case"IMPORT":case"INSTREAM-ID":case"KEYFORMAT":case"KEYFORMATVERSIONS":case"LANGUAGE":case"NAME":case"PATHWAY-ID":case"QUERYPARAM":case"RECENTLY-REMOVED-DATERANGES":case"SERVER-URI":case"STABLE-RENDITION-ID":case"STABLE-VARIANT-ID":case"START-DATE":case"SUBTITLES":case"SUPPLEMENTAL-CODECS":case"URI":case"VALUE":case"VIDEO":case"X-ASSET-LIST":case"X-ASSET-URI":j.warn(r+`: attribute ${a} is missing quotes`)}s[a]=e}return s}}class nf{constructor(e,t,r=0){var i;if(this.attr=void 0,this.tagAnchor=void 0,this.tagOrder=void 0,this._startDate=void 0,this._endDate=void 0,this._dateAtEnd=void 0,this._cue=void 0,this._badValueForSameId=void 0,this.tagAnchor=(null==t?void 0:t.tagAnchor)||null,this.tagOrder=null!=(i=null==t?void 0:t.tagOrder)?i:r,t){var s,a=t.attr;for(s in a)if(Object.prototype.hasOwnProperty.call(e,s)&&e[s]!==a[s]){j.warn(`DATERANGE tag attribute: "${s}" does not match for tags with ID: "${e.ID}"`),this._badValueForSameId=s;break}e=Ms(new Xs({}),a,e)}this.attr=e,t?(this._startDate=t._startDate,this._cue=t._cue,this._endDate=t._endDate,this._dateAtEnd=t._dateAtEnd):this._startDate=new Date(e["START-DATE"]),"END-DATE"in this.attr&&(i=(null==t?void 0:t.endDate)||new Date(this.attr["END-DATE"]),H(i.getTime()))&&(this._endDate=i)}get id(){return this.attr.ID}get class(){return this.attr.CLASS}get cue(){var e=this._cue;return void 0===e?this._cue=this.attr.enumeratedStringList(this.attr.CUE?"CUE":"X-CUE",{pre:!1,post:!1,once:!1}):e}get startTime(){var e=this.tagAnchor;return null===e||null===e.programDateTime?(j.warn(`Expected tagAnchor Fragment with PDT set for DateRange "${this.id}": `+e),NaN):e.start+(this.startDate.getTime()-e.programDateTime)/1e3}get startDate(){return this._startDate}get endDate(){var e=this._endDate||this._dateAtEnd;return e||(null!==(e=this.duration)?this._dateAtEnd=new Date(this._startDate.getTime()+1e3*e):null)}get duration(){if("DURATION"in this.attr){var e=this.attr.decimalFloatingPoint("DURATION");if(H(e))return e}else if(this._endDate)return(this._endDate.getTime()-this._startDate.getTime())/1e3;return null}get plannedDuration(){return"PLANNED-DURATION"in this.attr?this.attr.decimalFloatingPoint("PLANNED-DURATION"):null}get endOnNext(){return this.attr.bool("END-ON-NEXT")}get isInterstitial(){return"com.apple.hls.interstitial"===this.class}get isValid(){return!!this.id&&!this._badValueForSameId&&H(this.startDate.getTime())&&(null===this.duration||0<=this.duration)&&(!this.endOnNext||!!this.class)&&(!this.attr.CUE||!this.cue.pre&&!this.cue.post||this.cue.pre!==this.cue.post)&&(!this.isInterstitial||"X-ASSET-URI"in this.attr||"X-ASSET-LIST"in this.attr)}}class of{constructor(e){this.PTSKnown=!1,this.alignedSliding=!1,this.averagetargetduration=void 0,this.endCC=0,this.endSN=0,this.fragments=void 0,this.fragmentHint=void 0,this.partList=null,this.dateRanges=void 0,this.dateRangeTagCount=0,this.live=!0,this.requestScheduled=-1,this.ageHeader=0,this.advancedDateTime=void 0,this.updated=!0,this.advanced=!0,this.misses=0,this.startCC=0,this.startSN=0,this.startTimeOffset=null,this.targetduration=0,this.totalduration=0,this.type=null,this.url=void 0,this.m3u8="",this.version=null,this.canBlockReload=!1,this.canSkipUntil=0,this.canSkipDateRanges=!1,this.skippedSegments=0,this.recentlyRemovedDateranges=void 0,this.partHoldBack=0,this.holdBack=0,this.partTarget=0,this.preloadHint=void 0,this.renditionReports=void 0,this.tuneInGoal=0,this.deltaUpdateFailed=void 0,this.driftStartTime=0,this.driftEndTime=0,this.driftStart=0,this.driftEnd=0,this.encryptedFragments=void 0,this.playlistParsingError=null,this.variableList=null,this.hasVariableRefs=!1,this.appliedTimelineOffset=void 0,this.fragments=[],this.encryptedFragments=[],this.dateRanges={},this.url=e}reloaded(e){var t,r;e?(t=this.lastPartSn-e.lastPartSn,r=this.lastPartIndex-e.lastPartIndex,this.updated=this.endSN!==e.endSN||!!r||!!t||!this.live,this.advanced=this.endSN>e.endSN||0r)return t[e].index;return r}}return 0}get lastPartSn(){var e;return null!=(e=this.partList)&&e.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}get expired(){var e;return!!(this.live&&this.age&&this.misses<3)&&(e=this.partEnd-this.fragmentStart,this.age>Math.max(e,this.totalduration)+this.levelTargetDuration)}}function Il(e){return"AES-128"===e||"AES-256"===e||"AES-256-CTR"===e}function Cl(e){switch(e){case"AES-128":case"AES-256":return Tl;case"AES-256-CTR":return _l;default:throw new Error("invalid full segment method "+e)}}function Pl(e){return Uint8Array.from(atob(e),e=>e.charCodeAt(0))}function Dl(e){return Uint8Array.from(unescape(encodeURIComponent(e)),e=>e.charCodeAt(0))}function xl(e){function t(e,t,r){var i=e[t];e[t]=e[r],e[r]=i}t(e,0,3),t(e,1,2),t(e,4,5),t(e,6,7)}function Ol(e){var t,r,e=e.split(":");let i=null;return"data"===e[0]&&2===e.length&&2===(t=(e=e[1].split(";"))[e.length-1].split(",")).length&&(r="base64"===t[0],t=t[1],i=r?(e.splice(-1,1),Pl(t)):(r=Dl(r=t).subarray(0,16),(e=new Uint8Array(16)).set(r,16-r.length),e)),i}let ri="undefined"!=typeof self?self:void 0;var Vs={CLEARKEY:"org.w3.clearkey",FAIRPLAY:"com.apple.fps",PLAYREADY:"com.microsoft.playready",WIDEVINE:"com.widevine.alpha"},Ml="org.w3.clearkey",Fl="com.apple.streamingkeydelivery",Nl="com.microsoft.playready",Ul="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed";function Bl(e){switch(e){case Fl:return Vs.FAIRPLAY;case Nl:return Vs.PLAYREADY;case Ul:return Vs.WIDEVINE;case Ml:return Vs.CLEARKEY}}var $l="1077efecc0b24d02ace33c1e52e2fb4b",Vl="e2719d58a985b3c9781ab030af78d30e",Gl="9a04f07998404286ab92e65be0885f95",Hl="edef8ba979d64acea3c827dcd51d21ed";function jl(e){return e===Hl?Vs.WIDEVINE:e===Gl?Vs.PLAYREADY:e===$l||e===Vl?Vs.CLEARKEY:void 0}function zl(e){switch(e){case Vs.FAIRPLAY:return Fl;case Vs.PLAYREADY:return Nl;case Vs.WIDEVINE:return Ul;case Vs.CLEARKEY:return Ml}}function Kl(e){let{drmSystems:t,widevineLicenseUrl:r}=e;e=t?[Vs.FAIRPLAY,Vs.WIDEVINE,Vs.PLAYREADY,Vs.CLEARKEY].filter(e=>!!t[e]):[];return!e[Vs.WIDEVINE]&&r&&e.push(Vs.WIDEVINE),e}let ii=null!=ri&&null!=(As=ri.navigator)&&As.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null;function Yl(e){e=new Uint16Array(e.buffer,e.byteOffset,e.byteLength/2),e=String.fromCharCode.apply(null,Array.from(e)),e=e.substring(e.indexOf("<"),e.length),e=(new DOMParser).parseFromString(e,"text/xml").getElementsByTagName("KID")[0];if(e){var e=e.childNodes[0]?e.childNodes[0].nodeValue:e.getAttribute("VALUE");if(e)return xl(e=Pl(e).subarray(0,16)),e}return null}let si={};class lf{static clearKeyUriToKeyIdMap(){si={}}constructor(e,t,r,i=[1],s=null){this.uri=void 0,this.method=void 0,this.keyFormat=void 0,this.keyFormatVersions=void 0,this.encrypted=void 0,this.isCommonEncryption=void 0,this.iv=null,this.key=null,this.keyId=null,this.pssh=null,this.method=e,this.uri=t,this.keyFormat=r,this.keyFormatVersions=i,this.iv=s,this.encrypted=!!e&&"NONE"!==e,this.isCommonEncryption=this.encrypted&&!Il(e)}isSupported(){if(this.method){if(Il(this.method)||"NONE"===this.method)return!0;if("identity"===this.keyFormat)return"SAMPLE-AES"===this.method;switch(this.keyFormat){case Fl:case Ul:case Nl:case Ml:return-1!==["ISO-23001-7","SAMPLE-AES","SAMPLE-AES-CENC","SAMPLE-AES-CTR"].indexOf(this.method)}}return!1}getDecryptData(t){if(!this.encrypted||!this.uri)return null;if(Il(this.method)&&this.uri&&!this.iv)return"number"!=typeof t&&(j.warn(`missing IV for initialization segment with method="${this.method}" - compliance issue`),t=0),t=(t=>{var r=new Uint8Array(16);for(let e=12;e<16;e++)r[e]=t>>8*(15-e)&255;return r})(t),new lf(this.method,this.uri,"identity",this.keyFormatVersions,t);var r=Ol(this.uri);if(r)switch(this.keyFormat){case Ul:22<=(this.pssh=r).length&&(this.keyId=r.subarray(r.length-22,r.length-6));break;case Nl:var i=new Uint8Array([154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149]);this.pssh=So(i,0,r),this.keyId=Yl(r);break;default:{let e=r.subarray(0,16);16!==e.length&&((i=new Uint8Array(16)).set(e,16-e.length),e=i),this.keyId=e;break}}if(!this.keyId||16!==this.keyId.byteLength){let e=si[this.uri];e||(t=Object.keys(si).length%Number.MAX_SAFE_INTEGER,e=new Uint8Array(16),new DataView(e.buffer,12,4).setUint32(0,t),si[this.uri]=e),this.keyId=e}return this}}let ai=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-(SESSION-DATA|SESSION-KEY|DEFINE|CONTENT-STEERING|START):([^\r\n]*)[\r\n]+/g,ni=/#EXT-X-MEDIA:(.*)/g,oi=/^#EXT(?:INF|-X-TARGETDURATION):/m,li=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/(?!#) *(\S[^\r\n]*)/.source,/#.*/.source].join("|"),"g"),hi=new RegExp([/#EXT-X-(PROGRAM-DATE-TIME|BYTERANGE|DATERANGE|DEFINE|KEY|MAP|PART|PART-INF|PLAYLIST-TYPE|PRELOAD-HINT|RENDITION-REPORT|SERVER-CONTROL|SKIP|START):(.+)/.source,/#EXT-X-(BITRATE|DISCONTINUITY-SEQUENCE|MEDIA-SEQUENCE|TARGETDURATION|VERSION): *(\d+)/.source,/#EXT-X-(DISCONTINUITY|ENDLIST|GAP|INDEPENDENT-SEGMENTS)/.source,/(#)([^:]*):(.*)/.source,/(#)(.*)(?:.*)\r?\n?/.source].join("|"));class hf{static findGroup(t,r){for(let e=0;e({id:e.attrs.AUDIO,audioCodec:e.audioCodec})),SUBTITLES:s.map(e=>({id:e.attrs.SUBTITLES,textCodec:e.textCodec})),"CLOSED-CAPTIONS":[]};let n=0;for(ni.lastIndex=0;null!==(p=ni.exec(e));){var o,l,h,d,c,u,f,p=new Xs(p[1],r),g=p.TYPE;g&&(o=a[g],l=i[g]||[],i[g]=l,f=p.LANGUAGE,h=p["ASSOC-LANGUAGE"],d=p.CHANNELS,c=p.CHARACTERISTICS,u=p["INSTREAM-ID"],g={attrs:p,bitrate:0,id:n++,groupId:p["GROUP-ID"]||"",name:p.NAME||f||"",type:g,default:p.bool("DEFAULT"),autoselect:p.bool("AUTOSELECT"),forced:p.bool("FORCED"),lang:f,url:p.URI?hf.resolve(p.URI,t):""},h&&(g.assocLang=h),d&&(g.channels=d),c&&(g.characteristics=c),u&&(g.instreamId=u),null!=o&&o.length&&(Zl(g,f=hf.findGroup(o,g.groupId)||o[0],"audioCodec"),Zl(g,f,"textCodec")),l.push(g))}return i}static parseLevelPlaylist(e,t,r,i,F,N){var s={url:t},a=new of(t),n=a.fragments,o=[];let l=null,h=0,d=0,c=0,u=0,f=0,p=null,g=new ju(i,s),m,v,y,b=-1,E=!1,T=null,_;if(li.lastIndex=0,a.m3u8=e,a.hasVariableRefs=Ll(e),"#EXTM3U"!==(null==(O=li.exec(e))?void 0:O[0]))a.playlistParsingError=new Error("Missing format identifier #EXTM3U");else{for(;null!==(m=li.exec(e));){E&&(E=!1,(g=new ju(i,s)).playlistOffset=c,g.start=c,g.sn=h,g.cc=u,f&&(g.bitrate=f),g.level=r,l)&&((g.initSegment=l).rawProgramDateTime&&(g.rawProgramDateTime=l.rawProgramDateTime,l.rawProgramDateTime=null),T)&&(g.setByteRange(T),T=null);var S=m[1];if(S){g.duration=parseFloat(S);var A=(" "+m[2]).slice(1);g.title=A||null,g.tagList.push(A?["INF",S,A]:["INF",S])}else if(m[3])H(g.duration)&&(g.playlistOffset=c,g.start=c,y&&th(g,y,a),g.sn=h,g.level=r,g.cc=u,n.push(g),A=(" "+m[3]).slice(1),g.relurl=kl(a,A),Jl(g,p,o),p=g,c+=g.duration,h++,d=0,E=!0);else if(m=m[0].match(hi)){for(v=1;v{let i=t[r];for(let e=r;e--;){var s=t[e];if(!s)return;s.programDateTime=i.programDateTime-1e3*s.duration,i=s}})(n,b),M)&&o.unshift(M)):(a.endSN=0,a.startCC=0),a.fragmentHint&&(c+=a.fragmentHint.duration),a.totalduration=c,o.length&&a.dateRangeTagCount&&M&&Wl(o,a),a.endCC=u}return a}}function Wl(t,r){var i=t.length,s=t[i-1],a=r.live?1/0:r.totalduration,n=Object.keys(r.dateRanges);for(let e=n.length;e--;){var o=r.dateRanges[n[e]],l=o.startDate.getTime();o.tagAnchor=s.ref;for(let e=i;e--;){var h=((t,r,i,s,e)=>{var a=i[s];if(a){var n=a.programDateTime;if(n<=r||0===s){var o=((null==(o=i[s+1])?void 0:o.start)||e)-a.start;if(r<=n+1e3*o){var l=i[s].sn-t.startSN,h=t.fragments;if(h.length>i.length)for(let e=(i[s+1]||h[h.length-1]).sn-t.startSN;e>l;e--){var d=h[e].programDateTime;if(d<=r&&re);["video","audio","text"].forEach(t=>{let r=s.filter(e=>wo(e,t));r.length&&(i[t+"Codec"]=r.map(e=>e.split("/")[0]).join(","),s=s.filter(e=>-1===r.indexOf(e)))}),i.unknownCodecs=s}function Zl(e,t,r){t=t[r];t&&(e[r]=t)}function Jl(e,t,r){e.rawProgramDateTime?r.push(e):null!=t&&t.programDateTime&&(e.programDateTime=t.endProgramDateTime)}function eh(e,t,r,i){e.relurl=t.URI,t.BYTERANGE&&e.setByteRange(t.BYTERANGE),e.level=r,e.sn="initSegment",i&&(e.levelkeys=i),e.initSegment=null}function th(e,t,r){e.levelkeys=t;r=r.encryptedFragments;r.length&&r[r.length-1].levelkeys===t||!Object.keys(t).some(e=>t[e].isCommonEncryption)||r.push(e)}function rh(e,t,r){e.playlistParsingError=new Error(`#EXT-X-${t} must not appear more than once (${r[0]})`)}function ih(e,t,r){e.playlistParsingError=new Error(`#EXT-X-${t} must appear before the first Media Segment (${r[0]})`)}function sh(r,i){var s=i.startPTS;if(H(s)){let e=0,t;(t=i.sn>r.sn?(e=s-r.start,r):(e=r.start-s,i)).duration!==e&&t.setDuration(e)}else i.sn>r.sn?r.cc===i.cc&&r.minEndPTS?i.setStart(r.start+(r.minEndPTS-r.start)):i.setStart(r.start+r.duration):i.setStart(Math.max(r.start-i.duration,0))}function ah(e,t,r,i,s,a){i-r<=0&&(j.warn("Fragment should have a positive duration",t),i=r+t.duration,a=s+t.duration);let n=r,o=i;var l=t.startPTS,h=t.endPTS,d=(H(l)&&(d=Math.abs(l-r),H(t.deltaPTS)?t.deltaPTS=Math.max(d,t.deltaPTS):t.deltaPTS=d,n=Math.max(r,l),r=Math.min(r,l),s=Math.min(s,t.startDTS),o=Math.min(i,h),i=Math.max(i,h),a=Math.max(a,t.endDTS)),r-t.start),l=(0!==t.start&&t.setStart(r),t.setDuration(i-t.start),t.startPTS=r,t.maxStartPTS=n,t.startDTS=s,t.endPTS=i,t.minEndPTS=o,t.endDTS=a,t.sn);if(!e||le.endSN)return 0;let c;var h=l-e.startSN,u=e.fragments;for(u[h]=t,c=h;0{var a=i.skippedSegments,e=Math.max(r.startSN,i.startSN)-i.startSN,n=(r.fragmentHint?1:0)+(a?i.endSN:Math.min(r.endSN,i.endSN))-i.startSN,o=i.startSN-r.startSN,l=i.fragmentHint?i.fragments.concat(i.fragmentHint):i.fragments,h=r.fragmentHint?r.fragments.concat(r.fragmentHint):r.fragments;for(let t=e;t<=n;t++){var d=h[o+t];let e=l[t];if(a&&!e&&d&&(e=i.fragments[t]=d),d&&e){if(s(d,e,t,l),d.url&&d.url!==e.url)return i.playlistParsingError=oh(`media sequence mismatch ${e.sn}:`,r,i,0,e);if(d.cc!==e.cc)return i.playlistParsingError=oh(`discontinuity sequence mismatch (${d.cc}!=${e.cc})`,r,i,0,e)}}})(o,l,(e,t,r,i)=>{if(!l.startCC&&t.cc!==e.cc){var s=e.cc-t.cc;for(let e=r;e{var t;!e||e.initSegment&&e.initSegment.relurl!==(null==(t=a)?void 0:t.relurl)||(e.initSegment=a)}),l.skippedSegments)if(l.deltaUpdateFailed=i.some(e=>!e),l.deltaUpdateFailed){j.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(let e=l.skippedSegments;e--;)i.shift();l.startSN=i[0].sn}else{l.endCC=i[i.length-1].cc,l.canSkipDateRanges&&(l.dateRanges=((e,t)=>{let{dateRanges:i,recentlyRemovedDateranges:r}=t,s=Ms({},e),a=(r&&r.forEach(e=>{delete s[e]}),Object.keys(s)),n=a.length;return n&&Object.keys(i).forEach(e=>{var t=s[e],r=new nf(i[e].attr,t);r.isValid?(s[e]=r,t||(r.tagOrder+=n)):j.warn(`Ignoring invalid Playlist Delta Update DATERANGE tag: "${$(i[e].attr)}"`)}),s})(o.dateRanges,l));var h=o.fragments.filter(e=>e.rawProgramDateTime);if(o.hasProgramDateTime&&!l.hasProgramDateTime)for(let e=1;e{t.elementaryStreams=e.elementaryStreams,t.stats=e.stats};if(d&&c){let r=0;for(let e=0,t=d.length;e<=t;e++){var f=d[e],p=c[e+r];f&&p&&f.index===p.index&&f.fragment.sn===p.fragment.sn?u(f,p):r--}}n?ah(l,n,n.startPTS,n.endPTS,n.startDTS,n.endDTS):lh(o,l),i.length&&(l.totalduration=l.edge-i[0].start),l.driftStartTime=o.driftStartTime,l.driftStart=o.driftStart;var e,g=l.advancedDateTime;l.advanced&&g?(e=l.edge,l.driftStart||(l.driftStartTime=g,l.driftStart=e),l.driftEndTime=g,l.driftEnd=e):(l.driftEndTime=o.driftEndTime,l.driftEnd=o.driftEnd,l.advancedDateTime=o.advancedDateTime),-1===l.requestScheduled&&(l.requestScheduled=o.requestScheduled)}}function oh(e,t,r,i,s){return new Error(`${e} ${s.url} Playlist starting @${t.startSN} ${t.m3u8} Playlist starting @${r.startSN} `+r.m3u8)}function lh(e,t,r=!0){var i=t.startSN+t.skippedSegments-e.startSN,s=e.fragments,a=0<=i;let n=0;if(a&&it&&(t=1e3*e[e.length-1].duration){null!=(e=e.details)&&e.fragments.forEach(e=>{e.level=t,e.initSegment&&(e.initSegment.level=t)})})}function gh(r,i){for(let e=0,t=r.length;ei.startCC&&(r=Math.min(t.endCC,e.endCC),i=gh(t.fragments,r),t=gh(e.fragments,r),i)&&t&&(j.log("Aligning playlist at start of dicontinuity sequence "+r),vh(i.start-t.start,e))}function bh(r,i){if(r.hasProgramDateTime&&i.hasProgramDateTime){var s=r.fragments,a=i.fragments;if(s.length&&a.length){let e,t;var n=Math.min(i.endCC,r.endCC),i=(i.startCC{var{config:e,fragCurrent:t,media:r,mediaBuffer:i,state:s}=this,a=r?r.currentTime:0,i=qs.bufferInfo(i||r,a,e.maxBufferHole);this.log(`media seeking to ${H(a)?a.toFixed(3):a}, state: `+s),this.state===E.ENDED?this.resetLoadingState():t&&(s=e.maxFragLookUpTolerance,e=t.start-s,s=t.start+t.duration+s,!i.len||si.end)&&(s=s{this.log("setting startPosition to 0 because media ended"),this.startPosition=this.lastCurrentTime=0},this.playlistType=s,this.hls=e,this.fragmentLoader=new tf(e.config),this.keyLoader=r,this.fragmentTracker=t,this.config=e.config,this.decrypter=new ef(e.config)}registerListeners(){var e=this.hls;e.on(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(X.MANIFEST_LOADING,this.onManifestLoading,this),e.on(X.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(X.ERROR,this.onError,this)}unregisterListeners(){var e=this.hls;e.off(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(X.MANIFEST_LOADING,this.onManifestLoading,this),e.off(X.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(X.ERROR,this.onError,this)}doTick(){this.onTickEnd()}onTickEnd(){}startLoad(e){}stopLoad(){var e;this.state!==E.STOPPED&&(this.fragmentLoader.abort(),this.keyLoader.abort(this.playlistType),null!=(e=this.fragCurrent)&&e.loader&&(e.abortRequests(),this.fragmentTracker.removeFragment(e)),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=E.STOPPED)}get startPositionValue(){var{nextLoadPosition:e,startPosition:t}=this;return-1===t&&e?e:t}get bufferingEnabled(){return this.buffering}pauseBuffering(){this.buffering=!1}resumeBuffering(){this.buffering=!0}get inFlightFrag(){return{frag:this.fragCurrent,state:this.state}}_streamEnded(e,t){var r,i;return!(t.live||!this.media||(e.end||0)<=(r=this.config.timelineOffset||0)||(i=e.nextStart)&&r{var t=e.frag;this.fragContextChanged(t)?(this.warn(`${t.type} sn: ${t.sn}${e.part?" part: "+e.part.index:""} of ${this.fragInfo(t,!1,e.part)}) was dropped during download.`),this.fragmentTracker.removeFragment(t)):(t.stats.chunkCount++,this._handleFragmentLoadProgress(e))}).then(e=>{var t,r;e&&(t=this.state,r=e.frag,this.fragContextChanged(r)?t!==E.FRAG_LOADING&&(this.fragCurrent||t!==E.PARSING)||(this.fragmentTracker.removeFragment(r),this.state=E.IDLE):("payload"in e&&(this.log(`Loaded ${r.type} sn: ${r.sn} of ${this.playlistLabel()} `+r.level),this.hls.trigger(X.FRAG_LOADED,e)),this._handleFragmentLoadComplete(e)))}).catch(e=>{this.state!==E.STOPPED&&this.state!==E.ERROR&&(this.warn("Frag error: "+((null==e?void 0:e.message)||e)),this.resetFragmentLoading(t))})}clearTrackerIfNeeded(e){var t,r,i=this.fragmentTracker;i.getState(e)===gl?(t=e.type,t=this.getFwdBufferInfo(this.mediaBuffer,t),t=Math.max(e.duration,t?t.len:this.config.maxBufferLength),1!=((r=this.backtrackFragment)?e.sn-r.sn:0)&&!this.reduceMaxBufferLength(t,e.duration)||i.removeFragment(e)):0===(null==(r=this.mediaBuffer)?void 0:r.buffered.length)?i.removeAllFragments():i.hasParts(e.type)&&(i.detectPartialFragments({frag:e,part:null,stats:e.stats,id:e.type}),i.getState(e)===ml)&&i.removeFragment(e)}checkLiveUpdate(e){var t;e.updated&&!e.live&&(t=e.fragments[e.fragments.length-1],this.fragmentTracker.detectPartialFragments({frag:t,part:null,stats:t.stats,id:t.type})),e.fragments[0]||(e.deltaUpdateFailed=!0)}waitForLive(e){var t=e.details;return(null==t?void 0:t.live)&&"EVENT"!==t.type&&(this.levelLastLoaded!==e||t.expired)}flushMainBuffer(e,t,r=null){e-t&&(e={startOffset:e,endOffset:t,type:r},this.hls.trigger(X.BUFFER_FLUSHING,e))}_loadInitSegment(t,e){this._doFragLoad(t,e).then(e=>{var t=null==e?void 0:e.frag;if(t&&!this.fragContextChanged(t)&&this.levels)return e;throw new Error("init load aborted")}).then(i=>{let s=this.hls,{frag:a,payload:e}=i;var t=a.decryptdata;if(e&&0{throw s.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.FRAG_DECRYPT_ERROR,fatal:!1,error:e,reason:e.message,frag:a}),e}).then(e=>{var t=self.performance.now();return s.trigger(X.FRAG_DECRYPTED,{frag:a,payload:e,stats:{tstart:r,tdecrypt:t}}),i.payload=e,this.completeInitSegmentLoad(i)})}return this.completeInitSegmentLoad(i)}).catch(e=>{this.state!==E.STOPPED&&this.state!==E.ERROR&&(this.warn(e),this.resetFragmentLoading(t))})}completeInitSegmentLoad(e){var t=this.levels;if(!t)throw new Error("init load aborted, missing levels");t=e.frag.stats;this.state!==E.STOPPED&&(this.state=E.IDLE),e.frag.data=new Uint8Array(e.payload),t.parsing.start=t.buffering.start=self.performance.now(),t.parsing.end=t.buffering.end=self.performance.now(),this.tick()}fragContextChanged(e){var t=this.fragCurrent;return!e||!t||e.sn!==t.sn||e.level!==t.level}fragBufferedComplete(e,t){var r=this.mediaBuffer||this.media;if(this.log(`Buffered ${e.type} sn: ${e.sn}${t?" part: "+t.index:""} of ${this.fragInfo(e,!1,t)} > buffer:${r?di.toString(qs.getBuffered(r)):"(detached)"})`),Ns(e)){if(e.type!==Gn){let t=e.elementaryStreams;if(!Object.keys(t).some(e=>!!t[e]))return void(this.state=E.IDLE)}r=null==(t=this.levels)?void 0:t[e.level];null!=r&&r.fragmentError&&(this.log(`Resetting level fragment error count of ${r.fragmentError} on frag buffered`),r.fragmentError=0)}this.state=E.IDLE}_handleFragmentLoadComplete(e){var t,r,i=this.transmuxer;i&&({frag:e,part:t,partsLoaded:r}=e,r=!r||0===r.length||r.some(e=>!e),e=new af(e.level,e.sn,e.stats.chunkCount+1,0,t?t.index:-1,!r),i.flush(e))}_handleFragmentLoadProgress(e){}_doFragLoad(r,i,s=null,a){this.fragCurrent=r;var n=null==i?void 0:i.details;if(!this.levels||!n)throw new Error(`frag load aborted, missing level${n?"":" detail"}s`);let o=null;!r.encrypted||null!=(l=r.decryptdata)&&l.key?!r.encrypted&&n.encryptedFragments.length&&this.keyLoader.loadClear(r,n.encryptedFragments):(this.log(`Loading key for ${r.sn} of [${n.startSN}-${n.endSN}], ${this.playlistLabel()} `+r.level),this.state=E.KEY_LOADING,this.fragCurrent=r,o=this.keyLoader.load(r).then(e=>{if(!this.fragContextChanged(e.frag))return this.hls.trigger(X.KEY_LOADED,e),this.state===E.KEY_LOADING&&(this.state=E.IDLE),e}),this.hls.trigger(X.KEY_LOADING,{frag:r}),null===this.fragCurrent&&(o=Promise.reject(new Error("frag load aborted, context changed in KEY_LOADING"))));var l=this.fragPrevious;if(!Ns(r)||l&&r.sn===l.sn||(h=this.shouldLoadParts(i.details,r.end))!==this.loadingParts&&(this.log(`LL-Part loading ${h?"ON":"OFF"} loading sn ${null==l?void 0:l.sn}->`+r.sn),this.loadingParts=h),s=Math.max(r.start,s||0),this.loadingParts&&Ns(r)){l=n.partList;if(l&&a){s>r.end&&n.fragmentHint&&(r=n.fragmentHint);var h=this.getNextPart(l,r,s);if(-1!e||this.fragContextChanged(e.frag)?null:this.doFragPartsLoad(r,t,i,a)).catch(e=>this.handleFragLoadError(e)):this.doFragPartsLoad(r,t,i,a).catch(e=>this.handleFragLoadError(e)),this.hls.trigger(X.FRAG_LOADING,{frag:r,part:t,targetBufferTime:s}),null===this.fragCurrent?Promise.reject(new Error("frag load aborted, context changed in FRAG_LOADING parts")):e}if(!r.url||this.loadedEndOfParts(l,s))return Promise.resolve(null)}}if(Ns(r)&&this.loadingParts)this.log("LL-Part loading OFF after next part miss @"+s.toFixed(2)),this.loadingParts=!1;else if(!r.url)return Promise.resolve(null);this.log(`Loading ${r.type} sn: ${r.sn} of ${this.fragInfo(r,!1)}) cc: ${r.cc} ${n?"["+n.startSN+"-"+n.endSN+"]":""}, target: `+parseFloat(s.toFixed(3))),H(r.sn)&&!this.bitrateTest&&(this.nextLoadPosition=r.start+r.duration),this.state=E.FRAG_LOADING;let t=this.config.progressive,e;return e=t&&o?o.then(e=>!e||this.fragContextChanged(null==e?void 0:e.frag)?null:this.fragmentLoader.load(r,a)).catch(e=>this.handleFragLoadError(e)):Promise.all([this.fragmentLoader.load(r,t?a:void 0),o]).then(([e])=>(!t&&e&&a&&a(e),e)).catch(e=>this.handleFragLoadError(e)),this.hls.trigger(X.FRAG_LOADING,{frag:r,targetBufferTime:s}),null===this.fragCurrent?Promise.reject(new Error("frag load aborted, context changed in FRAG_LOADING")):e}doFragPartsLoad(o,r,l,h){return new Promise((i,e)=>{let t,s=[],a=null==(t=l.details)?void 0:t.partList,n=r=>{this.fragmentLoader.loadPart(o,r,h).then(e=>{var t=(s[r.index]=e).part,e=(this.hls.trigger(X.FRAG_LOADED,e),uh(l.details,o.sn,r.index+1)||fh(a,o.sn,r.index+1));if(!e)return i({frag:o,part:t,partsLoaded:s});n(e)}).catch(e)};n(r)})}handleFragLoadError(e){var t;return"data"in e?(t=e.data,e.data&&t.details===q.INTERNAL_ABORTED?this.handleFragLoadAborted(t.frag,t.part):this.hls.trigger(X.ERROR,t)):this.hls.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.INTERNAL_EXCEPTION,err:e,error:e,fatal:!0}),null}_handleTransmuxerFlush(e){var t,r,i,s=this.getCurrentContext(e);s&&this.state===E.PARSING?({frag:s,part:t,level:r}=s,i=self.performance.now(),s.stats.parsing.end=i,t&&(t.stats.parsing.end=i),(i=(i=this.getLevelDetails())&&s.sn>i.endSN||this.shouldLoadParts(i,s.end))!==this.loadingParts&&(this.log(`LL-Part loading ${i?"ON":"OFF"} after parsing segment ending @`+s.end.toFixed(2)),this.loadingParts=i),this.updateLevelTiming(s,t,r,e.partial)):this.fragCurrent||this.state===E.STOPPED||this.state===E.ERROR||(this.state=E.IDLE)}shouldLoadParts(e,t){if(this.config.lowLatencyMode){if(!e)return this.loadingParts;if(null!=e&&e.partList){var r=e.partList[0],e=r.end+((null==(e=e.fragmentHint)?void 0:e.duration)||0);if(e<=t)if((this.hls.hasEnoughToStart?(null==(e=this.media)?void 0:e.currentTime)||this.lastCurrentTime:this.getLoadPosition())>r.start-r.fragment.duration)return!0}}return!1}getCurrentContext(e){var t,{levels:r,fragCurrent:i}=this,{level:e,sn:s,part:a}=e;return null!=r&&r[e]?(t=(r=r[e]).details,(t=(a=-1r&&this.flushMainBuffer(i,e.start)):this.flushMainBuffer(0,e.start))}getFwdBufferInfo(e,t){var r,i=this.getLoadPosition();return H(i)?(r=this.lastCurrentTime>i||null!=(r=this.media)&&r.paused?0:this.config.maxBufferHole,this.getFwdBufferInfoAtPos(e,i,t,r)):null}getFwdBufferInfoAtPos(e,t,r,i){var s=qs.bufferInfo(e,t,i);if(0===s.len&&void 0!==s.nextStart){var r=this.fragmentTracker.getBufferedFrag(t,r);if(r&&(s.nextStart<=r.end||r.gap))return r=Math.max(Math.min(s.nextStart,r.end)-t,i),qs.bufferInfo(e,t,r)}return s}getMaxBufferLength(e){var t=this.config;let r;return r=e?Math.max(8*t.maxBufferSize/e,t.maxBufferLength):t.maxBufferLength,Math.min(r,t.maxMaxBufferLength)}reduceMaxBufferLength(e,t){var r=this.config,i=Math.max(Math.min(e-t,r.maxBufferLength),t),e=Math.max(e-3*t,r.maxMaxBufferLength/2,i);return i<=e&&(r.maxMaxBufferLength=e,this.warn(`Reduce max buffer length to ${e}s`),!0)}getAppendedFrag(e,t=Os){var r=null==(r=this.fragmentTracker)?void 0:r.getAppendedFrag(e,t);return r&&"fragment"in r?r.fragment:r}getNextFragment(e,t){var r=t.fragments,i=r.length;if(!i)return null;var s=this.config,a=r[0].start,n=s.lowLatencyMode&&!!t.partList;let o=null;if(t.live){var s=s.initialLiveManifestSize;if(it}getNextFragmentLoopLoading(e,t,r,i,s){let a=null;if(e.gap&&(a=this.getNextFragment(this.nextLoadPosition,t))&&!a.gap&&r.nextStart){e=this.getFwdBufferInfoAtPos(this.mediaBuffer||this.media,r.nextStart,i,0);if(null!==e&&r.len+e.len>=s)return t=a.sn,this.loopSn!==t&&(this.log(`buffer full after gaps in "${i}" playlist starting at sn: `+t),this.loopSn=t),null}return this.loopSn=void 0,a}get primaryPrefetch(){var e;if(Eh(this.hls.config)&&(null==(e=this.hls.interstitialsManager)||null==(e=e.playingItem)?void 0:e.event))return!0;return!1}filterReplacedPrimary(t,e){if(t&&Eh(this.hls.config)&&t.type!==Gn){var r=this.hls.interstitialsManager,i=null==r?void 0:r.bufferingItem;if(i){var s=i.event;if(s){if(s.appendInPlace||1i.end&&i.nextEvent&&(i.nextEvent.appendInPlace||1=n.startTime&&t.end<=n.resumeTime)return null}}return t}mapToInitFragWhenRequired(e){return null==e||!e.initSegment||null!=e&&e.initSegment.data||this.bitrateTest?e:e.initSegment}getNextPart(r,i,s){let a=-1,n=!1,o=!0;for(let e=0,t=r.length;ee.start&&e.loaded}getInitialLiveFragment(e,t){var r,i=this.fragPrevious;let s=null;return i?(e.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+i.programDateTime),s=Qo(t,i.endProgramDateTime,this.config.maxFragLookUpTolerance)),s||((r=i.sn+1)>=e.startSN&&r<=e.endSN&&(r=t[r-e.startSN],i.cc===r.cc)&&(s=r,this.log("Live playlist, switching playlist, load frag with next SN: "+s.sn)),s)||(s=el(t,i.cc))&&this.log("Live playlist, switching playlist, load frag with same CC: "+s.sn)):null!==(r=this.hls.liveSyncPosition)&&(s=this.getFragmentAtPosition(r,this.bitrateTest?e.fragmentEnd:e.edge,e)),s}getFragmentAtPosition(e,t,r){var i=this.config;let s=this.fragPrevious,{fragments:a,endSN:n}=r;var o=r.fragmentHint,i=i.maxFragLookUpTolerance,l=r.partList,h=!!(this.loadingParts&&null!=l&&l.length&&o);h&&o&&!this.bitrateTest&&l[l.length-1].fragment.sn===o.sn&&(a=a.concat(o),n=o.sn);let d;return(d=ed.sn||!r.live&&!h)&&s&&d.level===s.level&&(e=a[1+o],d=d.sn${e.startSN} fragments: `+n),r):i):(this.warn("No fragments in live playlist"),0)}waitForCdnTuneIn(e){return e.live&&e.canBlockReload&&e.partTarget&&e.tuneInGoal>Math.max(e.partHoldBack,3*e.partTarget)}setStartPosition(e,t){let r=this.startPosition;r `+(null==(i=this.fragCurrent)?void 0:i.url));else{var i=t.details===q.FRAG_GAP,s=(i&&this.fragmentTracker.fragBuffered(r,!0),t.errorAction),{action:a,flags:n,retryCount:o=0,retryConfig:l}=s||{},h=!!s&&!!l,d=h&&a===hl,h=h&&!s.resolved&&n===cl;if(!d&&h&&Ns(r)&&!r.endList)this.resetFragmentErrors(e),this.treatAsGap(r),s.resolved=!0;else if((d||h)&&o{var r,i=s.elementaryStreams[t];return i?(r=i.endPTS-i.startPTS)<=0?(this.warn(`Could not parse fragment ${s.sn} ${t} duration reliably (${r})`),e||!1):(r=n?0:ah(o,s,i.startPTS,i.endPTS,i.startDTS,i.endDTS),this.hls.trigger(X.LEVEL_PTS_UPDATED,{details:o,level:a,drift:r,type:t,frag:s,start:i.startPTS,end:i.endPTS}),!0):e},!1);if(!t)if(0===a.fragmentError&&this.treatAsGap(s,a),null===(null==(t=this.transmuxer)?void 0:t.error)){t=new Error(`Found no media in fragment ${s.sn} of ${this.playlistLabel()} ${s.level} resetting transmuxer to fallback to playlist timing`);if(this.warn(t.message),this.hls.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.FRAG_PARSING_ERROR,fatal:!1,error:t,frag:s,reason:`Found no media in msn ${s.sn} of ${this.playlistLabel()} "${a.url}"`}),!this.hls)return;this.resetTransmuxer()}this.state=E.PARSED,this.log(`Parsed ${s.type} sn: ${s.sn}${e?" part: "+e.index:""} of ${this.fragInfo(s,!1,e)})`),this.hls.trigger(X.FRAG_PARSED,{frag:s,part:e})}else this.warn("level.details undefined")}playlistLabel(){return this.playlistType===Os?"level":"track"}fragInfo(e,t=!0,r){var i;return`${this.playlistLabel()} ${e.level} (${r?"part":"frag"}:[${(null!=(i=t&&!r?e.startPTS:(r||e).start)?i:NaN).toFixed(3)}-${(null!=(i=t&&!r?e.endPTS:(r||e).end)?i:NaN).toFixed(3)}]`+(r&&"main"===e.type?"INDEPENDENT="+(r.independent?"YES":"NO"):"")}treatAsGap(e,t){t&&t.fragmentError++,e.gap=!0,this.fragmentTracker.removeFragment(e),this.fragmentTracker.fragBuffered(e,!0)}resetTransmuxer(){var e;null!=(e=this.transmuxer)&&e.reset()}recoverWorkerError(e){"demuxerWorker"===e.event&&(this.fragmentTracker.removeAllFragments(),this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null),this.resetStartWhenNotLoaded(this.levelLastLoaded),this.resetLoadingState())}set state(e){var t=this._state;t!==e&&(this._state=e,this.log(t+"->"+e))}get state(){return this._state}}function Eh(e){return e.interstitialsController&&!1!==e.enableInterstitialPlayback}class cf{constructor(){this.chunks=[],this.dataLength=0}push(e){this.chunks.push(e),this.dataLength+=e.length}flush(){var{chunks:e,dataLength:t}=this;let r;return e.length?(r=1===e.length?e[0]:((t,e)=>{let r=new Uint8Array(e),i=0;for(let e=0;e>>5}function Oh(e,t){return t+1{var s=(n=t[r+2])>>2&15;if(!(12>6&3),t=t[r+3]>>6&3|(1&n)<<2,r="mp4a.40."+a,n=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350][s];let e=s;5!=a&&29!=a||(e-=3);var o=[a<<3|(14&e)>>1,(1&e)<<7|t<<3];return j.log(`manifest codec:${i}, parsed codec:${r}, channels:${t}, rate:${n} (ADTS object type:${a} sampling index:${s})`),{config:o,samplerate:n,channelCount:t,codec:r,parsedCodec:r,manifestCodec:i}}a=new Error("invalid ADTS sampling index:"+s),e.emit(X.ERROR,X.ERROR,{type:W.MEDIA_ERROR,details:q.FRAG_PARSING_ERROR,fatal:!0,error:a,reason:a.message})})(t,r,i,s))&&Ms(e,t)}function Fh(e){return 9216e4/e}function Nh(e,t,r,i,s){var a,n,i=i+s*Fh(e.samplerate),s=((e,t)=>{var r=Dh(e,t);if(t+r<=e.length){e=xh(e,t)-r;if(0e instanceof ArrayBuffer?e:e.buffer)(r),t=1;"BYTES_PER_ELEMENT"in a&&(t=a.BYTES_PER_ELEMENT);var r=((n=(e=>e&&e.buffer instanceof ArrayBuffer&&void 0!==e.byteLength&&void 0!==e.byteOffset)(r)?r.byteOffset:0)+r.byteLength)/t,n=(n+i)/t,i=Math.floor(Math.max(0,Math.min(n,r))),n=Math.floor(Math.min(i+Math.max(s,0),r));return new a(e,i,n-i)}}function Bh(t){var r={key:t.type,description:"",data:"",mimeType:null,pictureType:null};if(!(t.size<2))if(3!==t.data[0])console.log("Ignore frame with unrecognized character encoding");else{var i=t.data.subarray(1).indexOf(0);if(-1!==i){var s=qn(Uh(t.data,1,i)),a=t.data[2+i],n=t.data.subarray(3+i).indexOf(0);if(-1!==n){var o=qn(Uh(t.data,3+i,n));let e;return e="--\x3e"===s?qn(Uh(t.data,4+i+n)):(t=t.data.subarray(4+i+n))instanceof ArrayBuffer?t:(0==t.byteOffset&&t.byteLength==t.buffer.byteLength?t:new Uint8Array(t)).buffer,r.mimeType=s,r.pictureType=a,r.description=o,r.data=e,r}}}}function $h(e){var t,r,i,s,a;return"PRIV"===e.type?(t=e).size<2?void 0:(r=qn(t.data,!0),a=new Uint8Array(t.data.subarray(r.length+1)),{key:t.type,info:r,data:a.buffer}):"W"===e.type[0]?"WXXX"===(t=e).type?t.size<2?void 0:(r=1,r+=(i=qn(t.data.subarray(1),!0)).length+1,r=qn(t.data.subarray(r)),{key:t.type,info:i,data:r}):(i=qn(t.data),{key:t.type,info:"",data:i}):"APIC"===e.type?Bh(e):(a=e).size<2?void 0:"TXXX"===a.type?(i=1,i+=(s=qn(a.data.subarray(1),!0)).length+1,i=qn(a.data.subarray(i)),{key:a.type,info:s,data:i}):(s=qn(a.data.subarray(1)),{key:a.type,info:"",data:s})}let fi=10,pi=10;function Vh(e){let t=0;for(var r,i=[];Rh(e,t);){for(var s=Ih(e,t+6),a=(e[t+5]>>6&1&&(t+=fi),(t+=fi)+s);t+pi(e.audioId3="org.id3",e.dateRange="com.apple.quicktime.HLS",e.emsg="https://aomedia.org/emsg/ID3",e.misbklv="urn:misb:KLV:bin:1910.1",e))({});function jh(e="",t=9e4){return{type:e,id:-1,pid:-1,inputTimeScale:t,sequenceNumber:-1,samples:[],dropped:0}}class uf{constructor(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null,this.lastPTS=null}resetInitSegment(e,t,r,i){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}}resetTimeStamp(e){this.initPTS=e,this.resetContiguity()}resetContiguity(){this.basePTS=null,this.lastPTS=null,this.frameIndex=0}canParse(e,t){return!1}appendFrame(e,t,r){}demux(e,t){this.cachedData&&(e=yo(this.cachedData,e),this.cachedData=null);let r=Ch(e,0),i=r?r.length:0,s;var a,n,o=this._audioTrack,l=this._id3Track,h=r?Hh(r):void 0,d=e.length;for((null===this.basePTS||0===this.frameIndex&&H(h))&&(this.basePTS=gi(h,t,this.initPTS),this.lastPTS=this.basePTS),null===this.lastPTS&&(this.lastPTS=this.basePTS),r&&0H(e)?90*e:9e4*t+(r?9e4*r.baseTime/r.timescale:0),mi=null,vi=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],yi=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],bi=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],Ei=[0,1,1,4];function zh(e,t,r,i,s){var a;return!(r+24>t.length)&&(a=Kh(t,r))&&r+a.frameLength<=t.length?(i=i+s*(9e4*a.samplesPerFrame/a.sampleRate),s={unit:t.subarray(r,r+a.frameLength),pts:i,dts:i},e.config=[],e.channelCount=a.channelCount,e.samplerate=a.sampleRate,e.samples.push(s),{sample:s,length:a.frameLength,missing:0}):void 0}function Kh(e,t){var r,i,s,a,n,o=e[t+1]>>3&3,l=e[t+1]>>1&3,h=e[t+2]>>4&15,d=e[t+2]>>2&3;if(1!=o&&0!=h&&15!=h&&3!=d)return n=e[t+2]>>1&1,r=e[t+3]>>6,i=3==o?3-l:3==l?3:4,i=1e3*vi[14*i+h-1],h=3==o?0:2==o?1:2,h=yi[3*h+d],d=3==r?1:2,a=8*(o=bi[o][l])*(s=Ei[l]),o=Math.floor(o*i/h+n)*s,null===mi&&(n=(navigator.userAgent||"").match(/Chrome\/(\d+)/i),mi=n?parseInt(n[1]):0),!!mi&&mi<=87&&2==l&&224e3<=i&&0==r&&(e[t+3]=128|e[t+3]),{sampleRate:h,channelCount:d,frameLength:o,samplesPerFrame:a}}function Yh(e,t){return 255===e[t]&&224==(224&e[t+1])&&0!=(6&e[t+1])}function Wh(e,t){return t+1=s.length?void 0:!((n=xh(s,a))<=o)&&((o=a+n)===s.length||Oh(s,o)))return r.log("ADTS sync word found !"),!0}return!1}canParse(e,t){return(t=t)+5<(e=e).length&&Ph(e,t)&&xh(e,t)<=e.length-t}appendFrame(e,t,r){Mh(e,this.observer,t,r,e.manifestCodec);e=Nh(e,t,r,this.basePTS,this.frameIndex);if(e&&0===e.missing)return e}}let Ti=(e,t)=>{let r=0,i=5;t+=i;for(var s=new Uint32Array(1),a=new Uint32Array(1),n=new Uint8Array(1);0>>24+l<>l,r=r?r<t.length)return-1;if(11!==t[r]||119!==t[r+1])return-1;var a=t[r+4]>>6;if(3<=a)return-1;var n=[48e3,44100,32e3][a],o=63&t[r+4],l=2*[64,69,96,64,70,96,80,87,120,80,88,120,96,104,144,96,105,144,112,121,168,112,122,168,128,139,192,128,140,192,160,174,240,160,175,240,192,208,288,192,209,288,224,243,336,224,244,336,256,278,384,256,279,384,320,348,480,320,349,480,384,417,576,384,418,576,448,487,672,448,488,672,512,557,768,512,558,768,640,696,960,640,697,960,768,835,1152,768,836,1152,896,975,1344,896,976,1344,1024,1114,1536,1024,1115,1536,1152,1253,1728,1152,1254,1728,1280,1393,1920,1280,1394,1920][3*o+a];if(t.length>5;let d=0;(2==h||(1&h&&1!=h&&(d+=2),4&h))&&(d+=2);var c=(t[r+6]<<8|t[r+7])>>12-d&1,u=[2,1,2,3,3,4,4,5][h]+c,f=7&t[r+5],a=new Uint8Array([a<<6|t[r+5]>>3<<1|f>>2,(3&f)<<6|h<<3|c<<2|o>>4,o<<4&224]),f=i+s*(1536/n*9e4),h=t.subarray(r,r+l);return e.config=a,e.channelCount=u,e.samplerate=n,e.samples.push({unit:h,pts:f}),l}class gf extends uf{resetInitSegment(e,t,r,i){super.resetInitSegment(e,t,r,i),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"mp3",samples:[],manifestCodec:t,duration:i,inputTimeScale:9e4,dropped:0}}static probe(t){if(t){var r=Ch(t,0);let e=(null==r?void 0:r.length)||0;if(!(r&&11===t[e]&&119===t[e+1]&&void 0!==Hh(r)&&Ti(t,e)<=16))for(var i=t.length;e{t=(e=>{var t=e[0];let r="",i="",s=0,a=0,n=0,o=0,l=0,h=0;if(0===t){for(;"\0"!==Us(e.subarray(h,h+1));)r+=Us(e.subarray(h,h+1)),h+=1;for(r+=Us(e.subarray(h,h+1)),h+=1;"\0"!==Us(e.subarray(h,h+1));)i+=Us(e.subarray(h,h+1)),h+=1;i+=Us(e.subarray(h,h+1)),h+=1,s=Bs(e,12),a=Bs(e,16),o=Bs(e,20),l=Bs(e,24),h=28}else if(1===t){h+=4,s=Bs(e,h);var t=Bs(e,h+=4),d=Bs(e,h+=4);for(h+=4,n=2**32*t+d,Or(n)||(n=Number.MAX_SAFE_INTEGER,j.warn("Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box")),o=Bs(e,h),h+=4,l=Bs(e,h),h+=4;"\0"!==Us(e.subarray(h,h+1));)r+=Us(e.subarray(h,h+1)),h+=1;for(r+=Us(e.subarray(h,h+1)),h+=1;"\0"!==Us(e.subarray(h,h+1));)i+=Us(e.subarray(h,h+1)),h+=1;i+=Us(e.subarray(h,h+1)),h+=1}return t=e.subarray(h,e.byteLength),{schemeIdUri:r,value:i,timeScale:s,presentationTime:n,presentationTimeDelta:a,eventDuration:o,id:l,payload:t}})(t);if(_i.test(t.schemeIdUri)){var r=Qh(t,s);let e=4294967295===t.eventDuration?Number.POSITIVE_INFINITY:t.eventDuration/t.timeScale;e<=.001&&(e=Number.POSITIVE_INFINITY);var i=t.payload;a.samples.push({data:i,len:i.byteLength,dts:r,pts:r,type:T.emsg,duration:e})}else this.config.enableEmsgKLVMetadata&&t.schemeIdUri.startsWith("urn:misb:KLV:bin:1910.1")&&(i=Qh(t,s),a.samples.push({data:t.payload,len:t.payload.byteLength,dts:i,pts:i,type:T.misbklv,duration:Number.POSITIVE_INFINITY}))}),a}demuxSampleAes(e,t,r){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))}destroy(){this.config=null,this.remainderData=null,this.videoTrack=this.audioTrack=this.id3Track=this.txtTrack=void 0}}function Qh(e,t){return H(e.presentationTime)?e.presentationTime/e.timeScale:t+e.presentationTimeDelta/e.timeScale}class vf{constructor(e,t,r){this.keyData=void 0,this.decrypter=void 0,this.keyData=r,this.decrypter=new ef(t,{removePKCS7Padding:!1})}decryptBuffer(e){return this.decrypter.decrypt(e,this.keyData.key.buffer,this.keyData.iv.buffer,Tl)}decryptAacSample(t,r,i){let s=t[r].unit;var e;s.length<=16||(e=(e=s.subarray(16,s.length-s.length%16)).buffer.slice(e.byteOffset,e.byteOffset+e.length),this.decryptBuffer(e).then(e=>{e=new Uint8Array(e);s.set(e,16),this.decrypter.isSync()||this.decryptAacSamples(t,r+1,i)}))}decryptAacSamples(e,t,r){for(;;t++){if(t>=e.length)return void r();if(!(e[t].unit.length<32)&&(this.decryptAacSample(e,t,r),!this.decrypter.isSync()))return}}getAvcEncryptedData(t){var e=16*Math.floor((t.length-48)/160)+16,r=new Int8Array(e);let i=0;for(let e=32;e{a.data=this.getAvcDecryptedUnit(n,e),this.decrypter.isSync()||this.decryptAvcSamples(t,r,i+1,s)})}decryptAvcSamples(e,t,r,i){if(e instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;t++,r=0){if(t>=e.length)return void i();for(var s=e[t].units;!(r>=s.length);r++){var a=s[r];if(!(a.data.length<=48||1!==a.type&&5!==a.type||(this.decryptAvcSample(e,t,r,i,a),this.decrypter.isSync())))return}}}}class yf{constructor(){this.VideoSample=null}createVideoSample(e,t,r){return{key:e,frame:!1,pts:t,dts:r,units:[],length:0}}getLastNalUnit(e){let t,r=this.VideoSample,i;return null!=(t=r=r&&0!==r.units.length?r:e[e.length-1])&&t.units&&(e=r.units,i=e[e.length-1]),i}pushAccessUnit(e,t){if(e.units.length&&e.frame){if(void 0===e.pts){var r=t.samples,i=r.length;if(!i)return void t.dropped++;r=r[i-1];e.pts=r.pts,e.dts=r.dts}t.samples.push(e)}}parseNALu(e,t,r){var i=t.byteLength;let s=e.naluState||0;var a,n=s,o=[];let l=0,h=-1,d=0;for(-1===s&&(h=0,d=this.getNALuType(t,0),s=0,l=1);le||(e=(e-=this.bitsAvailable)-((t=e>>3)<<3),this.bytesAvailable-=t,this.loadWord()),this.word<<=e,this.bitsAvailable-=e}readBits(e){var t=Math.min(this.bitsAvailable,e),r=this.word>>>32-t;if(32>>e))return this.word<<=e,this.bitsAvailable-=e,e;return this.loadWord(),e+this.skipLZ()}skipUEG(){this.skipBits(1+this.skipLZ())}skipEG(){this.skipBits(1+this.skipLZ())}readUEG(){var e=this.skipLZ();return this.readBits(e+1)-1}readEG(){var e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)}readBoolean(){return 1===this.readBits(1)}readUByte(){return this.readBits(8)}readUShort(){return this.readBits(16)}readUInt(){return this.readBits(32)}}class Ef extends yf{parsePES(n,r,o,e){var t=this.parseNALu(n,o.data,e);let l=this.VideoSample,h,d=!1;o.data=null,l&&t.length&&!n.audFound&&(this.pushAccessUnit(l,n),l=this.VideoSample=this.createVideoSample(!1,o.pts,o.dts)),t.forEach(t=>{switch(t.type){case 1:{let e=!1;h=!0;var i=t.data;d&&4{var t;switch(e.type){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:(h=h||(this.VideoSample=this.createVideoSample(!1,l.pts,l.dts))).frame=!0,d=!0;break;case 16:case 17:case 18:case 21:d=!0,c&&null!=(t=h)&&t.frame&&!h.key&&(this.pushAccessUnit(h,n),h=this.VideoSample=null),(h=h||(this.VideoSample=this.createVideoSample(!0,l.pts,l.dts))).key=!0,h.frame=!0;break;case 19:case 20:d=!0,null!=(t=h)&&t.frame&&!h.key&&(this.pushAccessUnit(h,n),h=this.VideoSample=null),(h=h||(this.VideoSample=this.createVideoSample(!0,l.pts,l.dts))).key=!0,h.frame=!0;break;case 39:d=!0,To(e.data,2,l.pts,o.samples);break;case 32:d=!0,n.vps||("object"!=typeof n.params&&(n.params={}),n.params=Ms(n.params,this.readVPS(e.data)),this.initVPS=e.data),n.vps=[e.data];break;case 33:if(d=!0,c=!0,void 0===n.vps||n.vps[0]===this.initVPS||void 0===n.sps||this.matchSPS(n.sps[0],e.data)||(this.initVPS=n.vps[0],n.sps=n.pps=void 0),!n.sps){var r,i=this.readSPS(e.data);for(r in n.width=i.width,n.height=i.height,n.pixelRatio=i.pixelRatio,n.codec=i.codecString,n.sps=[],"object"!=typeof n.params&&(n.params={}),i.params)n.params[r]=i.params[r]}this.pushParameterSet(n.sps,e.data,n.vps),(h=h||(this.VideoSample=this.createVideoSample(!0,l.pts,l.dts))).key=!0;break;case 34:if(d=!0,"object"==typeof n.params){if(!n.pps){n.pps=[];var s,a=this.readPPS(e.data);for(s in a)n.params[s]=a[s]}this.pushParameterSet(n.pps,e.data,n.vps)}break;case 35:d=!0,n.audFound=!0,null!=(t=h)&&t.frame&&(this.pushAccessUnit(h,n),h=null),h=h||(this.VideoSample=this.createVideoSample(!1,l.pts,l.dts));break;default:d=!1}h&&d&&h.units.push(e)}),e&&h&&(this.pushAccessUnit(h,n),this.VideoSample=null)}pushParameterSet(e,t,r){(r&&r[0]===this.initVPS||!r&&!e.length)&&e.push(t)}getNALuType(e,t){return(126&e[t])>>>1}ebsp2rbsp(t){var r=new Uint8Array(t.byteLength);let i=0;for(let e=0;e>e&1)<<31-e)>>>0;let M=O.toString(16);return{codecString:`hvc1.${T}${s}.${M=1===s&&"2"===M?"6":M}.${t?"H":"L"}${h}.B0`,params:{general_tier_flag:t,general_profile_idc:s,general_profile_space:e,general_profile_compatibility_flags:[a,n,o,l],general_constraint_indicator_flags:[F,N,U,B,$,V],general_level_idc:h,bit_depth:E+8,bit_depth_luma_minus8:E,bit_depth_chroma_minus8:G,min_spatial_segmentation_idc:k,chroma_format_idc:u,frame_rate:{fixed:C,fps:D/P}},width:q,height:X,pixelRatio:[R,I]}}readPPS(e){var e=new bf(this.ebsp2rbsp(e)),t=(e.readUByte(),e.readUByte(),e.skipUEG(),e.skipUEG(),e.skipBits(2),e.skipBits(3),e.skipBits(2),e.skipUEG(),e.skipUEG(),e.skipEG(),e.skipBits(2),e.readBoolean()),t=(t&&e.skipUEG(),e.skipEG(),e.skipEG(),e.skipBits(4),e.readBoolean()),e=e.readBoolean();let r=1;return e&&t?r=0:e?r=3:t&&(r=2),{parallelismType:r}}matchSPS(e,t){return String.fromCharCode.apply(null,e).substr(3)===String.fromCharCode.apply(null,t).substr(3)}}class _f{constructor(e,t,r,i){this.logger=void 0,this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.sampleAes=null,this.pmtParsed=!1,this.audioCodec=void 0,this.videoCodec=void 0,this._pmtId=-1,this._videoTrack=void 0,this._audioTrack=void 0,this._id3Track=void 0,this._txtTrack=void 0,this.aacOverFlow=null,this.remainderData=null,this.videoParser=void 0,this.observer=e,this.config=t,this.typeSupported=r,this.logger=i,this.videoParser=null}static probe(e,t){e=_f.syncOffset(e);return 0n))return r}o++}return-1}static createTrack(e,t){return{container:"video"===e||"audio"===e?"video/mp2t":void 0,type:e,id:$r[e],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:"audio"===e?t:void 0}}resetInitSegment(e,t,r,i){this.pmtParsed=!1,this._pmtId=-1,this._videoTrack=_f.createTrack("video"),this._videoTrack.duration=i,this._audioTrack=_f.createTrack("audio",i),this._id3Track=_f.createTrack("id3"),this._txtTrack=_f.createTrack("text"),this._audioTrack.segmentCodec="aac",this.aacOverFlow=null,this.remainderData=null,this.audioCodec=t,this.videoCodec=r}resetTimeStamp(){}resetContiguity(){var{_audioTrack:e,_videoTrack:t,_id3Track:r}=this;e&&(e.pesData=null),t&&(t.pesData=null),r&&(r.pesData=null),this.aacOverFlow=null,this.remainderData=null}demux(r,e,i=!1,t=!1){i||(this.sampleAes=null);let s;var a=this._videoTrack,n=this._audioTrack,o=this._id3Track,l=this._txtTrack;let h=a.pid,d=a.pesData,c=n.pid,u=o.pid,f=n.pesData,p=o.pesData,g=null,m=this.pmtParsed,v=this._pmtId,y=r.length;if(this.remainderData&&(r=yo(this.remainderData,r),y=r.length,this.remainderData=null),y<188&&!t)return this.remainderData=r,{audioTrack:n,videoTrack:a,id3Track:o,textTrack:l};var b,E=Math.max(0,_f.syncOffset(r));(y-=(y-E)%188)>4){if((e=t+5+r[t+4])===t+188)continue}else e=t+4;switch(S){case h:if(_){if(d&&(s=td(d,this.logger))){if(null===this.videoParser)switch(a.segmentCodec){case"avc":this.videoParser=new Ef;break;case"hevc":this.videoParser=new Tf}null!==this.videoParser&&this.videoParser.parsePES(a,l,s,!1)}d={data:[],size:0}}d&&(d.data.push(r.subarray(e,t+188)),d.size+=t+188-e);break;case c:if(_){if(f&&(s=td(f,this.logger)))switch(n.segmentCodec){case"aac":this.parseAACPES(n,s);break;case"mp3":this.parseMPEGPES(n,s);break;case"ac3":this.parseAC3PES(n,s)}f={data:[],size:0}}f&&(f.data.push(r.subarray(e,t+188)),f.size+=t+188-e);break;case u:_&&(p&&(s=td(p,this.logger))&&this.parseID3PES(o,s),p={data:[],size:0}),p&&(p.data.push(r.subarray(e,t+188)),p.size+=t+188-e);break;case 0:_&&(e+=r[e]+1),v=this._pmtId=(A=r,b=e,(31&A[b+10])<<8|A[b+11]);break;case v:_&&(e+=r[e]+1);var A=((r,i,s,e,t,a)=>{var n={audioPid:-1,videoPid:-1,id3Pid:-1,segmentVideoCodec:"avc",segmentAudioCodec:"aac"},o=(15&r[i+1])<<8|r[i+2],l=i+3+o-4;for(i+=12+(o=(15&r[i+10])<<8|r[i+11]);i{let{audioTrack:t,videoTrack:r}=i;t.samples&&"aac"===t.segmentCodec?s.decryptAacSamples(t.samples,0,()=>{r.samples?s.decryptAvcSamples(r.samples,0,0,()=>{e(i)}):e(i)}):r.samples&&s.decryptAvcSamples(r.samples,0,0,()=>{e(i)})})}destroy(){this.observer&&this.observer.removeAllListeners(),this.config=this.logger=this.observer=null,this.aacOverFlow=this.videoParser=this.remainderData=this.sampleAes=null,this._videoTrack=this._audioTrack=this._id3Track=this._txtTrack=void 0}parseAACPES(e,t){let r=0;var i,s,a=this.aacOverFlow;let n=t.data;a&&(this.aacOverFlow=null,l=a.missing,d=a.sample.unit.byteLength,-1===l?n=yo(a.sample.unit,n):(d=d-l,a.sample.unit.set(n.subarray(0,l),d),e.samples.push(a.sample),r=a.missing));let o;for(o=r,i=n.length;oe.size-6)return null;var h=s[7];192&h&&(n=536870912*(14&s[9])+4194304*(255&s[10])+16384*(254&s[11])+128*(255&s[12])+(254&s[13])/2,64&h?(o=536870912*(14&s[14])+4194304*(255&s[15])+16384*(254&s[16])+128*(255&s[17])+(254&s[18])/2,54e5e){r-=e;continue}s=s.subarray(r),e-=r,r=0}d.set(s,i),i+=e}return a&&(a-=h+3),{data:d,pts:n,dts:o,len:a}}}class Sf{static getSilentFrame(e,t){if("mp4a.40.2"===e){if(1===t)return new Uint8Array([0,200,0,128,35,128]);if(2===t)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(3===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(4===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(5===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(6===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(1===t)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(2===t)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(3===t)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}}}let _=Math.pow(2,32)-1;class Qs{static init(){Qs.types={avc1:[],avcC:[],hvc1:[],hvcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],dac3:[],"ac-3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]};let e;for(e in Qs.types)Qs.types.hasOwnProperty(e)&&(Qs.types[e]=[e.charCodeAt(0),e.charCodeAt(1),e.charCodeAt(2),e.charCodeAt(3)]);var t=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),r=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),t=(Qs.HDLR_TYPES={video:t,audio:r},new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1])),r=new Uint8Array([0,0,0,0,0,0,0,0]),r=(Qs.STTS=Qs.STSC=Qs.STCO=r,Qs.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),Qs.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),Qs.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),Qs.STSD=new Uint8Array([0,0,0,0,0,0,0,1]),new Uint8Array([105,115,111,109])),i=new Uint8Array([97,118,99,49]),s=new Uint8Array([0,0,0,1]);Qs.FTYP=Qs.box(Qs.types.ftyp,r,s,r,i),Qs.DINF=Qs.box(Qs.types.dinf,Qs.box(Qs.types.dref,t))}static box(e,...t){let r=8,i=t.length;for(var s=i;i--;)r+=t[i].byteLength;var a=new Uint8Array(r);for(a[0]=r>>24&255,a[1]=r>>16&255,a[2]=r>>8&255,a[3]=255&r,a.set(e,4),i=0,r=8;i>24&255,e>>16&255,e>>8&255,255&e,r>>24,r>>16&255,r>>8&255,255&r,t>>24,t>>16&255,t>>8&255,255&t,85,196,0,0]))}static mdia(e){return Qs.box(Qs.types.mdia,Qs.mdhd(e.timescale||0,e.duration||0),Qs.hdlr(e.type),Qs.minf(e))}static mfhd(e){return Qs.box(Qs.types.mfhd,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,255&e]))}static minf(e){return"audio"===e.type?Qs.box(Qs.types.minf,Qs.box(Qs.types.smhd,Qs.SMHD),Qs.DINF,Qs.stbl(e)):Qs.box(Qs.types.minf,Qs.box(Qs.types.vmhd,Qs.VMHD),Qs.DINF,Qs.stbl(e))}static moof(e,t,r){return Qs.box(Qs.types.moof,Qs.mfhd(e),Qs.traf(r,t))}static moov(e){let t=e.length;for(var r=[];t--;)r[t]=Qs.trak(e[t]);return Qs.box.apply(null,[Qs.types.moov,Qs.mvhd(e[0].timescale||0,e[0].duration||0)].concat(r).concat(Qs.mvex(e)))}static mvex(e){let t=e.length;for(var r=[];t--;)r[t]=Qs.trex(e[t]);return Qs.box.apply(null,[Qs.types.mvex,...r])}static mvhd(e,t){t*=e;var r=Math.floor(t/(1+_)),t=Math.floor(t%(1+_)),e=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,255&e,r>>24,r>>16&255,r>>8&255,255&r,t>>24,t>>16&255,t>>8&255,255&t,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return Qs.box(Qs.types.mvhd,e)}static sdtp(e){var t,r=e.samples||[],i=new Uint8Array(4+r.length);let s;for(s=0;s>>8&255),t.push(255&a),t=t.concat(Array.prototype.slice.call(s));for(i=0;i>>8&255),r.push(255&a),r=r.concat(Array.prototype.slice.call(s));var n=Qs.box(Qs.types.avcC,new Uint8Array([1,t[3],t[4],t[5],255,224|e.sps.length].concat(t).concat([e.pps.length]).concat(r))),o=e.width,l=e.height,h=e.pixelRatio[0],d=e.pixelRatio[1];return Qs.box(Qs.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,o>>8&255,255&o,l>>8&255,255&l,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),n,Qs.box(Qs.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),Qs.box(Qs.types.pasp,new Uint8Array([h>>24,h>>16&255,h>>8&255,255&h,d>>24,d>>16&255,d>>8&255,255&d])))}static esds(e){e=e.config;return new Uint8Array([0,0,0,0,3,25,0,1,0,4,17,64,21,0,0,0,0,0,0,0,0,0,0,0,5,2,...e,6,1,2])}static audioStsd(e){var t=e.samplerate||0;return new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount||0,0,16,0,0,0,0,t>>8&255,255&t,0,0])}static mp4a(e){return Qs.box(Qs.types.mp4a,Qs.audioStsd(e),Qs.box(Qs.types.esds,Qs.esds(e)))}static mp3(e){return Qs.box(Qs.types[".mp3"],Qs.audioStsd(e))}static ac3(e){return Qs.box(Qs.types["ac-3"],Qs.audioStsd(e),Qs.box(Qs.types.dac3,e.config))}static stsd(e){var t=e.segmentCodec;if("audio"===e.type){if("aac"===t)return Qs.box(Qs.types.stsd,Qs.STSD,Qs.mp4a(e));if("ac3"===t&&e.config)return Qs.box(Qs.types.stsd,Qs.STSD,Qs.ac3(e));if("mp3"===t&&"mp3"===e.codec)return Qs.box(Qs.types.stsd,Qs.STSD,Qs.mp3(e))}else{if(!e.pps||!e.sps)throw new Error("video track missing pps or sps");if("avc"===t)return Qs.box(Qs.types.stsd,Qs.STSD,Qs.avc1(e));if("hevc"===t&&e.vps)return Qs.box(Qs.types.stsd,Qs.STSD,Qs.hvc1(e))}throw new Error(`unsupported ${e.type} segment codec (${t}/${e.codec})`)}static tkhd(e){var t=e.id,r=(e.duration||0)*(e.timescale||0),i=e.width||0,e=e.height||0,s=Math.floor(r/(1+_)),r=Math.floor(r%(1+_));return Qs.box(Qs.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,255&t,0,0,0,0,s>>24,s>>16&255,s>>8&255,255&s,r>>24,r>>16&255,r>>8&255,255&r,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,i>>8&255,255&i,0,0,e>>8&255,255&e,0,0]))}static traf(e,t){var r=Qs.sdtp(e),i=e.id,s=Math.floor(t/(1+_)),t=Math.floor(t%(1+_));return Qs.box(Qs.types.traf,Qs.box(Qs.types.tfhd,new Uint8Array([0,0,0,0,i>>24,i>>16&255,i>>8&255,255&i])),Qs.box(Qs.types.tfdt,new Uint8Array([1,0,0,0,s>>24,s>>16&255,s>>8&255,255&s,t>>24,t>>16&255,t>>8&255,255&t])),Qs.trun(e,r.length+16+20+8+16+8+8),r)}static trak(e){return e.duration=e.duration||4294967295,Qs.box(Qs.types.trak,Qs.tkhd(e),Qs.mdia(e))}static trex(e){e=e.id;return Qs.box(Qs.types.trex,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,255&e,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))}static trun(e,t){var r,i,s=e.samples||[],a=s.length,n=12+16*a,o=new Uint8Array(n);let l;for(o.set(["video"===e.type?1:0,0,15,1,a>>>24&255,a>>>16&255,a>>>8&255,255&a,(t+=8+n)>>>24&255,t>>>16&255,t>>>8&255,255&t],0),l=0;l>>24&255,i>>>16&255,i>>>8&255,255&i,(i=r.size)>>>24&255,i>>>16&255,i>>>8&255,255&i,(i=r.flags).isLeading<<2|i.dependsOn,i.isDependedOn<<6|i.hasRedundancy<<4|i.paddingValue<<1|i.isNonSync,61440&i.degradPrio,15&i.degradPrio,(i=r.cts)>>>24&255,i>>>16&255,i>>>8&255,255&i],12+16*l);return Qs.box(Qs.types.trun,o)}static initSegment(e){Qs.types||Qs.init();e=Qs.moov(e);return yo(Qs.FTYP,e)}static hvc1(e){var t=e.params,r=[e.vps,e.sps,e.pps],t=new Uint8Array([1,t.general_profile_space<<6|(t.general_tier_flag?32:0)|t.general_profile_idc,t.general_profile_compatibility_flags[0],t.general_profile_compatibility_flags[1],t.general_profile_compatibility_flags[2],t.general_profile_compatibility_flags[3],t.general_constraint_indicator_flags[0],t.general_constraint_indicator_flags[1],t.general_constraint_indicator_flags[2],t.general_constraint_indicator_flags[3],t.general_constraint_indicator_flags[4],t.general_constraint_indicator_flags[5],t.general_level_idc,240|t.min_spatial_segmentation_idc>>8,255&t.min_spatial_segmentation_idc,252|t.parallelismType,252|t.chroma_format_idc,248|t.bit_depth_luma_minus8,248|t.bit_depth_chroma_minus8,0,parseInt(t.frame_rate.fps),3|t.temporal_id_nested<<2|t.num_temporal_layers<<3|(t.frame_rate.fixed?64:0),r.length]);let i=t.length;for(let t=0;t>8,255&r[t][e].length]),i),i+=2,s.set(r[t][e],i),i+=r[t][e].length}var t=Qs.box(Qs.types.hvcC,s),n=e.width,o=e.height,l=e.pixelRatio[0],e=e.pixelRatio[1];return Qs.box(Qs.types.hvc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,n>>8&255,255&n,o>>8&255,255&o,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),t,Qs.box(Qs.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),Qs.box(Qs.types.pasp,new Uint8Array([l>>24,l>>16&255,l>>8&255,255&l,e>>24,e>>16&255,e>>8&255,255&e])))}}Qs.types=void 0,Qs.HDLR_TYPES=void 0,Qs.STTS=void 0,Qs.STSC=void 0,Qs.STCO=void 0,Qs.STSZ=void 0,Qs.VMHD=void 0,Qs.SMHD=void 0,Qs.STSD=void 0,Qs.FTYP=void 0,Qs.DINF=void 0;let Si=9e4;function rd(e,t,r=1,i=!1){e=e*t*r;return i?Math.round(e):e}function id(e,t=!1){return rd(e,1e3,1/Si,t)}let Ai=null,wi=null;function sd(e,t,r,i){return{duration:t,size:r,cts:i,flags:{isLeading:0,isDependedOn:0,hasRedundancy:0,degradPrio:0,dependsOn:e?2:1,isNonSync:e?0:1}}}class Af{constructor(e,t,r,i){this.logger=void 0,this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.ISGenerated=!1,this._initPTS=null,this._initDTS=null,this.nextAvcDts=null,this.nextAudioPts=null,this.videoSampleDuration=null,this.isAudioContiguous=!1,this.isVideoContiguous=!1,this.videoTrackConfig=void 0,this.observer=e,this.config=t,this.typeSupported=r,this.logger=i,this.ISGenerated=!1,null===Ai&&(e=(navigator.userAgent||"").match(/Chrome\/(\d+)/i),Ai=e?parseInt(e[1]):0),null===wi&&(t=navigator.userAgent.match(/Safari\/(\d+)/i),wi=t?parseInt(t[1]):0)}destroy(){this.config=this.videoTrackConfig=this._initPTS=this._initDTS=null}resetTimeStamp(e){this.logger.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=e}resetNextTimestamp(){this.logger.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1}resetInitSegment(){this.logger.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1,this.videoTrackConfig=void 0}getVideoStartPts(e){let s=!1,a=e[0].pts;e=e.reduce((e,t)=>{let r=t.pts,i=r-e;return i<-4294967296&&(s=!0,r=ad(r,a),i=r-e),0{for(let e=0;e=a[0].pts||Ai)){u=h;var _=a[0].pts-E;if(T)a[0].dts=u,a[0].pts=_;else{let t=!0;for(let e=0;e_&&t);e++){var S,A,F=a[e].pts;a[e].dts-=E,a[e].pts-=E,e0<=e.pts)).length)return;g=0===i?0:t&&!u?Math.max(0,m):f[0].pts}if("aac"===s.segmentCodec){var y=this.config.maxAudioFramesDrift;for(let r=0,i=g;re.pts-t.pts);var e=t.samples;return t.samples=[],{samples:e}}}class wf{constructor(e,t,r,i){this.logger=void 0,this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=null,this.initTracks=void 0,this.lastEndTime=null,this.logger=i}destroy(){}resetTimeStamp(e){this.initPTS=e,this.lastEndTime=null}resetNextTimestamp(){this.lastEndTime=null}resetInitSegment(e,t,r,i){this.audioCodec=t,this.videoCodec=r,this.generateInitSegment(((e,t)=>{if(e&&t){let i=t.keyId;i&&t.isCommonEncryption&&$s(e,["moov","trak"]).forEach(e=>{e=$s(e,["mdia","minf","stbl","stsd"])[0].subarray(8);let t=$s(e,["enca"]),r=0{$s(r?e.subarray(28):e.subarray(78),["sinf"]).forEach(e=>{var t,e=mo(e);e&&!(t=e.subarray(8,24)).some(e=>0!==e)&&(j.log(`[eme] Patching keyId in 'enc${r?"a":"v"}>sinf>>tenc' box: ${b.hexDump(t)} -> `+b.hexDump(i)),e.set(i,8))})})})}return e})(e,i)),this.emitInitSegment=!0}generateInitSegment(e){let{audioCodec:t,videoCodec:r}=this;var i,s;null!=e&&e.byteLength?((i=this.initData=co(e)).audio&&(t=ld(i.audio,io)),i.video&&(r=ld(i.video,so)),s={},i.audio&&i.video?s.audiovideo={container:"video/mp4",codec:t+","+r,supplemental:i.video.supplemental,initSegment:e,id:"main"}:i.audio?s.audio={container:"audio/mp4",codec:t,initSegment:e,id:"audio"}:i.video?s.video={container:"video/mp4",codec:r,supplemental:i.video.supplemental,initSegment:e,id:"main"}:this.logger.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=s):(this.initTracks=void 0,this.initData=void 0)}remux(r,i,s,a,n,o){let e,l,{initPTS:h,lastEndTime:d}=this;var c={audio:void 0,video:void 0,text:a,id3:s,initSegment:void 0},i=(H(d)||(d=this.lastEndTime=n||0),i.samples);if(null!=i&&i.length){var u={initPTS:void 0,timescale:1};let t=this.initData;if(null!=(e=t)&&e.length||(this.generateInitSegment(i),t=this.initData),null!=(l=t)&&l.length){this.emitInitSegment&&(u.tracks=this.initTracks,this.emitInitSegment=!1);var f,p,g,m=vo(i,t),v=(f=t,$s(i,["moof","traf"]).reduce((e,t)=>{let i=$s(t,["tfdt"])[0],s=i[0];t=$s(t,["tfhd"]).reduce((t,r)=>{r=Bs(r,4),r=f[r];if(r){let e=Bs(i,4);if(1===s){if(e===Ur)return j.warn("[mp4-demuxer]: Ignoring assumed invalid signed 64-bit track fragment decode time"),t;e=(e*=1+Ur)+Bs(i,8)}r=r.timescale||9e4,r=e/r;if(H(r)&&(null===t||rnull===e||(i=Math.max(i,1),t-=e.baseTime/e.timescale,Math.abs(t-r)>i))(h,v,n,m)&&u.timescale===h.timescale||(u.initPTS=v-n,h&&1===h.timescale&&this.logger.warn(`Adjusting initPTS @${n} from ${h.baseTime/h.timescale} to `+u.initPTS),this.initPTS=h={baseTime:u.initPTS,timescale:1}),r?v-h.baseTime/h.timescale:d),r=o+m,v=(p=t,g=h.baseTime/h.timescale,$s(i,["moof","traf"]).forEach(r=>{$s(r,["tfhd"]).forEach(t=>{t=Bs(t,4),t=p[t];if(t){let e=t.timescale||9e4;$s(r,["tfdt"]).forEach(t=>{var r=t[0],i=g*e;if(i){let e=Bs(t,4);0===r?(e-=i,ho(t,4,e=Math.max(e,0))):(e=(e*=Math.pow(2,32))+Bs(t,8)-i,e=Math.max(e,0),r=Math.floor(e/(1+Ur)),i=Math.floor(e%(1+Ur)),ho(t,4,r),ho(t,8,i))}})}})}),0{let r=null;return r=0{e=this.push(e,null,r);return this.decryptionPromise=null,e}),this.decryptionPromise;{let e=m.softwareDecrypt(a,g.key.buffer,g.iv.buffer,v);if(-1this.flush(t));let a=[];var s=i.timeOffset,{demuxer:r,remuxer:i}=(r&&(i=r.flush())&&a.push(this.push(i.buffer,null,t)),this);return r&&i?hd(i=r.flush(s))?(this.asyncResult=!0,i.then(e=>(this.flushRemux(a,e,t),a))):(this.flushRemux(a,i,t),this.asyncResult?Promise.resolve(a):a):(e.executeEnd=S(),r=[ki(t)],this.asyncResult?Promise.resolve(r):r)}flushRemux(e,t,r){var{audioTrack:t,videoTrack:i,id3Track:s,textTrack:a}=t,{accurateTimeOffset:n,timeOffset:o}=this.currentTransmuxState,t=(this.logger.log(`[transmuxer.ts]: Flushed ${this.id} sn: ${r.sn}${-1({remuxResult:this.remuxer.remux(e.audioTrack,e.videoTrack,e.id3Track,e.textTrack,r,i,!1,this.id),chunkMeta:s}))}configureTransmuxer(r){var i,{config:e,observer:t,typeSupported:s}=this;let a;for(let e=0,t=Li.length;e({remuxResult:{},chunkMeta:e});function hd(e){return"then"in e&&e.then instanceof Function}class kf{constructor(e,t,r,i,s){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=e,this.videoCodec=t,this.initSegmentData=r,this.duration=i,this.defaultInitPts=s||null}}class Rf{constructor(e,t,r,i,s,a){this.discontinuity=void 0,this.contiguous=void 0,this.accurateTimeOffset=void 0,this.trackSwitch=void 0,this.timeOffset=void 0,this.initSegmentChange=void 0,this.discontinuity=e,this.contiguous=t,this.accurateTimeOffset=r,this.trackSwitch=i,this.timeOffset=s,this.initSegmentChange=a}}let Ri=0;class If{constructor(t,r,i,s){this.error=null,this.hls=void 0,this.id=void 0,this.instanceNo=Ri++,this.observer=void 0,this.frag=null,this.part=null,this.useWorker=void 0,this.workerContext=null,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.onWorkerMessage=e=>{var t=e.data,r=this.hls;if(r&&null!=t&&t.event&&t.instanceNo===this.instanceNo)switch(t.event){case"init":var i=null==(i=this.workerContext)?void 0:i.objectURL;i&&self.URL.revokeObjectURL(i);break;case"transmuxComplete":this.handleTransmuxComplete(t.data);break;case"flush":this.onFlush(t.data);break;case"workerLog":r.logger[t.data.logType]&&r.logger[t.data.logType](t.data.message);break;default:t.data=t.data||{},t.data.frag=this.frag,t.data.part=this.part,t.data.id=this.id,r.trigger(t.event,t.data)}},this.onWorkerError=e=>{this.hls&&(e=new Error(e.message+` (${e.filename}:${e.lineno})`),this.hls.config.enableWorker=!1,this.hls.logger.warn(`Error in "${this.id}" Web Worker, fallback to inline`),this.hls.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.INTERNAL_EXCEPTION,fatal:!1,event:"demuxerWorker",error:e}))};var e,a,n,o=t.config,i=(this.hls=t,this.id=r,this.useWorker=!!o.enableWorker,this.onTransmuxComplete=i,this.onFlush=s,(e,t)=>{(t=t||{}).frag=this.frag||void 0,e===X.ERROR&&(t.parent=this.id,t.part=this.part,this.error=t.error),this.hls.trigger(e,t)}),s=(this.observer=new Lh,this.observer.on(X.FRAG_DECRYPTED,i),this.observer.on(X.ERROR,i),xo(o.preferManagedMediaSource));if(this.useWorker&&"undefined"!=typeof Worker){i=this.hls.logger;if(o.workerPath||"function"==typeof __HLS_WORKER_BUNDLE__){try{o.workerPath?(i.log(`loading Web Worker ${o.workerPath} for "${r}"`),this.workerContext=(a=o.workerPath,(n=ui[a])?(n.clientCount++,n):(n=new self.URL(a,self.location.href).href,n={worker:new self.Worker(n),scriptURL:n,clientCount:1},ui[a]=n))):(i.log(`injecting Web Worker for "${r}"`),this.workerContext=(e=ui[ci])?(e.clientCount++,e):(e=new self.Blob([`var exports={};var module={exports:exports};function define(f){f()};define.amd=true;(${__HLS_WORKER_BUNDLE__.toString()})(true);`],{type:"text/javascript"}),e=self.URL.createObjectURL(e),e={worker:new self.Worker(e),objectURL:e,clientCount:1},ui[ci]=e));var l=this.workerContext.worker;l.addEventListener("message",this.onWorkerMessage),l.addEventListener("error",this.onWorkerError),l.postMessage({instanceNo:this.instanceNo,cmd:"init",typeSupported:s,id:r,config:$(o)})}catch(e){i.warn(`Error setting up "${r}" Web Worker, fallback to inline`,e),this.terminateWorker(),this.error=null,this.transmuxer=new Lf(this.observer,s,o,"",r,t.logger)}return}}this.transmuxer=new Lf(this.observer,s,o,"",r,t.logger)}reset(){var e,t,r;this.frag=null,this.part=null,this.workerContext&&(e=this.instanceNo,this.instanceNo=Ri++,r=xo((t=this.hls.config).preferManagedMediaSource),this.workerContext.worker.postMessage({instanceNo:this.instanceNo,cmd:"reset",resetNo:e,typeSupported:r,id:this.id,config:$(t)}))}terminateWorker(){var e,t,r;this.workerContext&&(e=this.workerContext.worker,this.workerContext=null,e.removeEventListener("message",this.onWorkerMessage),e.removeEventListener("error",this.onWorkerError),e=this.hls.config.workerPath,r=ui[e||ci])&&1==r.clientCount--&&({worker:r,objectURL:t}=r,delete ui[e||ci],t&&self.URL.revokeObjectURL(t),r.terminate())}destroy(){this.workerContext?(this.terminateWorker(),this.onWorkerMessage=this.onWorkerError=null):(e=this.transmuxer)&&(e.destroy(),this.transmuxer=null);var e=this.observer;e&&e.removeAllListeners(),this.frag=null,this.part=null,this.observer=null,this.hls=null}push(e,t,r,i,s,a,n,o,l,h){l.transmuxing.start=self.performance.now();var{instanceNo:d,transmuxer:c}=this,u=(a||s).start,f=s.decryptdata,p=this.frag,g=!(p&&s.cc===p.cc),m=!(p&&l.level===p.level),v=p?l.sn-p.sn:-1,y=this.part?l.part-this.part.index:-1,b=0==v&&1{this.handleTransmuxComplete(e)}).catch(e=>{this.transmuxerError(e,l,"transmuxer-interface push error")}):this.handleTransmuxComplete(y))}flush(t){t.transmuxing.start=self.performance.now();var{instanceNo:e,transmuxer:r}=this;this.workerContext?this.workerContext.worker.postMessage({instanceNo:e,cmd:"flush",chunkMeta:t}):r&&(hd(e=r.flush(t))?e.then(e=>{this.handleFlushResult(e,t)}).catch(e=>{this.transmuxerError(e,t,"transmuxer-interface flush error")}):this.handleFlushResult(e,t))}transmuxerError(e,t,r){this.hls&&(this.error=e,this.hls.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.FRAG_PARSING_ERROR,chunkMeta:t,frag:this.frag||void 0,part:this.part||void 0,fatal:!1,error:e,err:e,reason:r}))}handleFlushResult(e,t){e.forEach(e=>{this.handleTransmuxComplete(e)}),this.onFlush(t)}configureTransmuxer(e){var{instanceNo:t,transmuxer:r}=this;this.workerContext?this.workerContext.worker.postMessage({instanceNo:t,cmd:"configure",config:e}):r&&r.configure(e)}handleTransmuxComplete(e){e.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(e)}}class Cf extends df{constructor(e,t,r){super(e,t,r,"audio-stream-controller",Vn),this.mainAnchor=null,this.mainFragLoading=null,this.audioOnly=!1,this.bufferedTrack=null,this.switchingTrack=null,this.trackId=-1,this.waitingData=null,this.mainDetails=null,this.flushing=!1,this.bufferFlushed=!1,this.cachedTrackLoadedData=null,this.registerListeners()}onHandlerDestroying(){this.unregisterListeners(),super.onHandlerDestroying(),this.resetItem()}resetItem(){this.mainDetails=this.mainAnchor=this.mainFragLoading=this.bufferedTrack=this.switchingTrack=this.waitingData=this.cachedTrackLoadedData=null}registerListeners(){super.registerListeners();var e=this.hls;e.on(X.LEVEL_LOADED,this.onLevelLoaded,this),e.on(X.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),e.on(X.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.on(X.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.on(X.BUFFER_RESET,this.onBufferReset,this),e.on(X.BUFFER_CREATED,this.onBufferCreated,this),e.on(X.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(X.BUFFER_FLUSHED,this.onBufferFlushed,this),e.on(X.INIT_PTS_FOUND,this.onInitPtsFound,this),e.on(X.FRAG_LOADING,this.onFragLoading,this),e.on(X.FRAG_BUFFERED,this.onFragBuffered,this)}unregisterListeners(){var e=this.hls;e&&(super.unregisterListeners(),e.off(X.LEVEL_LOADED,this.onLevelLoaded,this),e.off(X.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),e.off(X.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.off(X.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.off(X.BUFFER_RESET,this.onBufferReset,this),e.off(X.BUFFER_CREATED,this.onBufferCreated,this),e.off(X.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(X.BUFFER_FLUSHED,this.onBufferFlushed,this),e.off(X.INIT_PTS_FOUND,this.onInitPtsFound,this),e.off(X.FRAG_LOADING,this.onFragLoading,this),e.off(X.FRAG_BUFFERED,this.onFragBuffered,this))}onInitPtsFound(e,{frag:t,id:r,initPTS:i,timescale:s}){var a;r===Os&&(r=t.cc,a=this.fragCurrent,this.initPTS[r]={baseTime:i,timescale:s},this.log(`InitPTS for cc: ${r} found from main: ${i}/`+s),this.mainAnchor=t,this.state===E.WAITING_INIT_PTS?((!(i=this.waitingData)&&!this.loadingParts||i&&i.frag.cc!==r)&&(this.nextLoadPosition=this.findSyncFrag(t).start),this.tick()):!this.hls.hasEnoughToStart&&a&&a.cc!==r?(this.startFragRequested=!1,this.nextLoadPosition=this.findSyncFrag(t).start,a.abortRequests(),this.resetLoadingState()):this.state===E.IDLE&&this.tick())}findSyncFrag(e){var t=this.getLevelDetails(),r=e.cc;return((i,s,a)=>{if(i&&i.startCC<=s&&i.endCC>=s){let t=a.start,r=a.end,e=i.fragments;return a.relurl||(a=i.fragmentHint,a&&(e=e.concat(a))),Xr.search(e,e=>e.ccs||e.start>=r?-1:0)}return null})(t,r,e)||t&&el(t.fragments,r)||e}startLoad(e,t){var r;this.levels?(r=this.lastCurrentTime,this.stopLoad(),this.setInterval(100),0o||s.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),i.currentTime=o+.05),!(e<=t&&!this.switchingTrack&&he.end&&(i=this.fragmentTracker.getFragAtPos(h,Os))&&i.end>e.end&&(e=i,this.mainFragLoading={frag:i,targetBufferTime:null});o=t.start>e.end;if(o)return}this.loadFragment(t,a,h)}else this.bufferFlushed=!0}}}}}onMediaDetaching(e,t){this.bufferFlushed=this.flushing=!1,super.onMediaDetaching(e,t)}onAudioTracksUpdated(e,{audioTracks:t}){this.resetTransmuxer(),this.levels=t.map(e=>new Yu(e))}onAudioTrackSwitching(e,t){var r=!!t.url,i=(this.trackId=t.id,this).fragCurrent;i&&(i.abortRequests(),this.removeUnbufferedFrags(i.start)),this.resetLoadingState(),r?(this.switchingTrack=t,this.flushAudioIfNeeded(t),this.state!==E.STOPPED&&(this.setInterval(100),this.state=E.IDLE,this.tick())):(this.resetTransmuxer(),this.switchingTrack=null,this.bufferedTrack=t,this.clearInterval())}onManifestLoading(){super.onManifestLoading(),this.bufferFlushed=this.flushing=this.audioOnly=!1,this.resetItem(),this.trackId=-1}onLevelLoaded(e,t){this.mainDetails=t.details;t=this.cachedTrackLoadedData;t&&(this.cachedTrackLoadedData=null,this.onAudioTrackLoaded(X.AUDIO_TRACK_LOADED,t))}onAudioTrackLoaded(e,t){var r=this.levels,{details:i,id:s,groupId:a,track:n}=t;if(r){var o=this.mainDetails;if(!o||i.endCC>o.endCC||o.expired)this.cachedTrackLoadedData=t,this.state!==E.STOPPED&&(this.state=E.WAITING_TRACK);else{this.cachedTrackLoadedData=null,this.log(`Audio track ${s} "${n.name}" of "${a}" loaded [${i.startSN},${i.endSN}]${i.lastPartSn?`[part-${i.lastPartSn}-${i.lastPartIndex}]`:""},duration:`+i.totalduration);var l,r=r[s];let e=0;if(i.live||null!=(l=r.details)&&l.live){if(this.checkLiveUpdate(i),i.deltaUpdateFailed)return;r.details&&(e=this.alignPlaylists(i,r.details,null==(l=this.levelLastLoaded)?void 0:l.details)),i.alignedSliding||(yh(i,o),i.alignedSliding||bh(i,o),e=i.fragmentStart)}r.details=i,this.levelLastLoaded=r,this.startFragRequested||this.setStartPosition(o,e),this.hls.trigger(X.AUDIO_TRACK_UPDATED,{details:i,id:s,groupId:t.groupId}),this.state!==E.WAITING_TRACK||this.waitForCdnTuneIn(i)||(this.state=E.IDLE),this.tick()}}else this.warn(`Audio tracks reset while loading track ${s} "${n.name}" of "${a}"`)}_handleFragmentLoadProgress(t){var r=t.frag,{part:t,payload:i}=t,{config:s,trackId:a,levels:n}=this;if(n){n=n[a];if(n){var o=n.details;if(o){s=s.defaultAudioCodec||n.audioCodec||"mp4a.40.2";let e=this.transmuxer;e=e||(this.transmuxer=new If(this.hls,Vn,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)));var l,h,n=this.initPTS[r.cc],d=null==(d=r.initSegment)?void 0:d.data;void 0!==n?(h=-1!==(l=t?t.index:-1),l=new af(r.level,r.sn,r.stats.chunkCount,i.byteLength,l,h),e.push(i,d,s,"",r,t,o.totalduration,!1,l,n)):(this.log(`Unknown video PTS for cc ${r.cc}, waiting for video PTS before demuxing audio frag ${r.sn} of [${o.startSN} ,${o.endSN}],track `+a),h=(this.waitingData=this.waitingData||{frag:r,part:t,cache:new cf,complete:!1}).cache,h.push(new Uint8Array(i)),this.state!==E.STOPPED&&(this.state=E.WAITING_INIT_PTS))}else this.warn("Audio track details undefined on fragment load progress"),this.removeUnbufferedFrags(r.start)}else this.warn("Audio track is undefined on fragment load progress")}else this.warn(`Audio tracks were reset while fragment load was in progress. Fragment ${r.sn} of level ${r.level} will not be buffered`)}_handleFragmentLoadComplete(e){this.waitingData?this.waitingData.complete=!0:super._handleFragmentLoadComplete(e)}onBufferReset(){this.mediaBuffer=null}onBufferCreated(e,t){this.bufferFlushed=this.flushing=!1;t=t.tracks.audio;t&&(this.mediaBuffer=t.buffer||null)}onFragLoading(e,t){!this.audioOnly&&t.frag.type===Os&&Ns(t.frag)&&(this.mainFragLoading=t,this.state===E.IDLE)&&this.tick()}onFragBuffered(e,t){var r,{frag:t,part:i}=t;t.type!==Vn?this.audioOnly||t.type!==Os||t.elementaryStreams.video||t.elementaryStreams.audiovideo||(this.audioOnly=!0,this.mainFragLoading=null):this.fragContextChanged(t)?this.warn(`Fragment ${t.sn}${i?" p: "+i.index:""} of level ${t.level} finished buffering, but was aborted. state: ${this.state}, audioSwitch: `+(this.switchingTrack?this.switchingTrack.name:"false")):(Ns(t)&&(this.fragPrevious=t,r=this.switchingTrack)&&(this.bufferedTrack=r,this.switchingTrack=null,this.hls.trigger(X.AUDIO_TRACK_SWITCHED,Fs({},r))),this.fragBufferedComplete(t,i),this.media&&this.tick())}onError(e,t){var r;if(t.fatal)this.state=E.ERROR;else switch(t.details){case q.FRAG_GAP:case q.FRAG_PARSING_ERROR:case q.FRAG_DECRYPT_ERROR:case q.FRAG_LOAD_ERROR:case q.FRAG_LOAD_TIMEOUT:case q.KEY_LOAD_ERROR:case q.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(Vn,t);break;case q.AUDIO_TRACK_LOAD_ERROR:case q.AUDIO_TRACK_LOAD_TIMEOUT:case q.LEVEL_PARSING_ERROR:t.levelRetry||this.state!==E.WAITING_TRACK||(null==(r=t.context)?void 0:r.type)!==Bn||(this.state=E.IDLE);break;case q.BUFFER_ADD_CODEC_ERROR:case q.BUFFER_APPEND_ERROR:"audio"===t.parent&&this.resetLoadingState();break;case q.BUFFER_FULL_ERROR:"audio"===t.parent&&this.reduceLengthAndFlushBuffer(t)&&(this.bufferedTrack=null,super.flushMainBuffer(0,Number.POSITIVE_INFINITY,"audio"));break;case q.INTERNAL_EXCEPTION:this.recoverWorkerError(t)}}onBufferFlushing(e,{type:t}){t!==so&&(this.flushing=!0)}onBufferFlushed(e,{type:t}){var r;t!==so&&(this.flushing=!1,this.bufferFlushed=!0,this.state===E.ENDED&&(this.state=E.IDLE),r=this.mediaBuffer||this.media)&&(this.afterBufferFlushed(r,t,Vn),this.tick())}_handleTransmuxComplete(e){var t,r,i,s,a,n,o,l,h=this.hls,{remuxResult:e,chunkMeta:d}=e,c=this.getCurrentContext(d);c?({frag:c,part:t,level:a}=c,r=a.details,{audio:e,text:i,id3:s,initSegment:l}=e,this.fragContextChanged(c)||!r?this.fragmentTracker.removeFragment(c):(this.state=E.PARSING,this.switchingTrack&&e&&this.completeAudioSwitch(this.switchingTrack),null!=l&&l.tracks&&(o=c.initSegment||c,this._bufferInitSegment(a,l.tracks,o,d),h.trigger(X.FRAG_PARSING_INIT_SEGMENT,{frag:o,id:"audio",tracks:l.tracks})),e&&({startPTS:a,endPTS:o,startDTS:l,endDTS:n}=e,t&&(t.elementaryStreams[io]={startPTS:a,endPTS:o,startDTS:l,endDTS:n}),c.setElementaryStreamInfo(io,a,o,l,n),this.bufferFragmentData(e,c,t,d)),null!=s&&null!=(a=s.samples)&&a.length&&(o=Ms({id:"audio",frag:c,details:r},s),h.trigger(X.FRAG_PARSING_METADATA,o)),i&&(l=Ms({id:"audio",frag:c,details:r},i),h.trigger(X.FRAG_PARSING_USERDATA,l)))):this.resetWhenMissingContext(d)}_bufferInitSegment(e,t,r,i){var s;this.state===E.PARSING&&(t.video&&delete t.video,t.audiovideo&&delete t.audiovideo,t.audio)&&((s=t.audio).id=Vn,e=e.audioCodec,this.log(`Init audio buffer, container:${s.container}, codecs[level/parsed]=[${e}/${s.codec}]`),e&&1===e.split(",").length&&(s.levelCodec=e),this.hls.trigger(X.BUFFER_CODECS,t),null!=(e=s.initSegment)&&e.byteLength&&(t={type:"audio",frag:r,part:null,chunkMeta:i,parent:r.type,data:e},this.hls.trigger(X.BUFFER_APPENDING,t)),this.tickImmediate())}loadFragment(e,t,r){var i=this.fragmentTracker.getState(e);this.switchingTrack||i===pl||i===ml?Ns(e)?null!=(i=t.details)&&i.live&&!this.initPTS[e.cc]?(this.log(`Waiting for video PTS in continuity counter ${e.cc} of live stream before loading audio fragment ${e.sn} of level `+this.trackId),this.state=E.WAITING_INIT_PTS,(i=this.mainDetails)&&i.fragmentStart!==t.details.fragmentStart&&bh(t.details,i)):super.loadFragment(e,t,r):this._loadInitSegment(e,t):this.clearTrackerIfNeeded(e)}flushAudioIfNeeded(e){var t,r,i,s,a,n;this.media&&this.bufferedTrack&&({name:t,lang:r,assocLang:i,characteristics:s,audioCodec:a,channels:n}=this.bufferedTrack,Yo({name:t,lang:r,assocLang:i,characteristics:s,audioCodec:a,channels:n},e,Wo)||(Xo(e.url,this.hls)?(this.log("Switching audio track : flushing all audio"),super.flushMainBuffer(0,Number.POSITIVE_INFINITY,"audio"),this.bufferedTrack=null):this.bufferedTrack=e))}completeAudioSwitch(e){var t=this.hls;this.flushAudioIfNeeded(e),this.bufferedTrack=e,this.switchingTrack=null,t.trigger(X.AUDIO_TRACK_SWITCHED,Fs({},e))}}class Pf extends Vu{constructor(e,t){super(t,e.logger),this.hls=void 0,this.canLoad=!1,this.timer=-1,this.hls=e}destroy(){this.clearTimer(),this.hls=this.log=this.warn=null}clearTimer(){-1!==this.timer&&(self.clearTimeout(this.timer),this.timer=-1)}startLoad(){this.canLoad=!0,this.loadPlaylist()}stopLoad(){this.canLoad=!1,this.clearTimer()}switchParams(i,s,t){var a=null==s?void 0:s.renditionReports;if(a){let r=-1;for(let e=0;es.partTarget&&(e+=1);o=t&&$o(t);return new Ku(l,0<=e?e:void 0,o)}}}loadPlaylist(e){this.clearTimer()}loadingPlaylist(e,t){this.clearTimer()}shouldLoadPlaylist(e){return this.canLoad&&!!e&&!!e.url&&(!e.details||e.details.live)}getUrlWithDirectives(e,t){if(t)try{return t.addDirectives(e)}catch(e){this.warn("Could not construct new URL with HLS Delivery Directives: "+e)}return e}playlistLoaded(s,a,n){var{details:o,stats:e}=a,l=self.performance.now(),h=e.loading.first?Math.max(0,l-e.loading.first):0,d=(o.advancedDateTime=Date.now()-h,this.hls.config.timelineOffset);if(d!==o.appliedTimelineOffset){let t=Math.max(d||0,0);o.appliedTimelineOffset=t,o.fragments.forEach(e=>{e.start=e.playlistOffset+t})}if(o.live||null!=n&&n.live){d="levelInfo"in a?a.levelInfo:a.track;if(o.reloaded(n),n&&03*o.targetduration?(this.log(`Playlist last advanced ${u.toFixed(2)}s ago. Omitting segment and part directives.`),r=void 0,i=void 0):null!=n&&n.tuneInGoal&&p-o.partTarget>n.tuneInGoal?(this.warn(`CDN Tune-in goal increased from: ${n.tuneInGoal} to: ${e} with playlist age: `+o.age),e=0):(s=Math.floor(e/o.targetduration),r+=s,void 0!==i&&(p=Math.round(e%o.targetduration/o.partTarget),i+=p),this.log(`CDN Tune-in age: ${o.ageHeader}s last advanced ${u.toFixed(2)}s goal: ${e} skip sn ${s} to part `+i)),o.tuneInGoal=e),t=this.getDeliveryDirectives(o,a.deliveryDirectives,r,i),c||!g)return o.requestScheduled=l,void this.loadingPlaylist(d,t)}else(o.canBlockReload||o.canSkipUntil)&&(t=this.getDeliveryDirectives(o,a.deliveryDirectives,r,i));t&&void 0!==r&&o.canBlockReload&&(o.requestScheduled=e.loading.first+Math.max(f-2*h,f/2)),this.scheduleLoading(d,t,o)}}else this.clearTimer()}scheduleLoading(e,t,r){var i,r=r||e.details;!r||(i=self.performance.now(),(r=r.requestScheduled)<=i)?this.loadingPlaylist(e,t):(r=r-i,this.log(`reload live playlist ${e.name||e.bitrate+"bps"} in ${Math.round(r)} ms`),this.clearTimer(),this.timer=self.setTimeout(()=>this.loadingPlaylist(e,t),r))}getDeliveryDirectives(e,t,r,i){let s=$o(e);return null!=t&&t.skip&&e.deltaUpdateFailed&&(r=t.msn,i=t.part,s=No),new Ku(r,i,s)}checkRetry(e){var t=e.details,r=tl(e),i=e.errorAction,{action:s,retryCount:a=0,retryConfig:n}=i||{},s=!!i&&!!n&&(s===hl||!i.resolved&&s===ol);if(s){if(a>=n.maxNumRetry)return!1;r&&null!=(r=e.context)&&r.deliveryDirectives?(this.warn(`Retrying playlist loading ${a+1}/${n.maxNumRetry} after "${t}" without delivery-directives`),this.loadPlaylist()):(r=il(n,a),this.clearTimer(),this.timer=self.setTimeout(()=>this.loadPlaylist(),r),this.warn(`Retrying playlist loading ${a+1}/${n.maxNumRetry} after "${t}" in ${r}ms`)),e.levelRetry=!0,i.resolved=!0}return s}}function dd(t,r){if(t.length!==r.length)return!1;for(let e=0;et[e]!==r[e])}function ud(e,t){return t.label.toLowerCase()===e.name.toLowerCase()&&(!t.language||t.language.toLowerCase()===(e.lang||"").toLowerCase())}class Df extends Pf{constructor(e){super(e,"audio-track-controller"),this.tracks=[],this.groupIds=null,this.tracksInGroup=[],this.trackId=-1,this.currentTrack=null,this.selectDefaultTrack=!0,this.registerListeners()}registerListeners(){var e=this.hls;e.on(X.MANIFEST_LOADING,this.onManifestLoading,this),e.on(X.MANIFEST_PARSED,this.onManifestParsed,this),e.on(X.LEVEL_LOADING,this.onLevelLoading,this),e.on(X.LEVEL_SWITCHING,this.onLevelSwitching,this),e.on(X.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.on(X.ERROR,this.onError,this)}unregisterListeners(){var e=this.hls;e.off(X.MANIFEST_LOADING,this.onManifestLoading,this),e.off(X.MANIFEST_PARSED,this.onManifestParsed,this),e.off(X.LEVEL_LOADING,this.onLevelLoading,this),e.off(X.LEVEL_SWITCHING,this.onLevelSwitching,this),e.off(X.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.off(X.ERROR,this.onError,this)}destroy(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.currentTrack=null,super.destroy()}onManifestLoading(){this.tracks=[],this.tracksInGroup=[],this.groupIds=null,this.currentTrack=null,this.trackId=-1,this.selectDefaultTrack=!0}onManifestParsed(e,t){this.tracks=t.audioTracks||[]}onAudioTrackLoaded(e,t){var r,{id:i,groupId:s,details:a}=t,n=this.tracksInGroup[i];n&&n.groupId===s?(r=n.details,n.details=t.details,this.log(`Audio track ${i} "${n.name}" lang:${n.lang} group:${s} loaded [${a.startSN}-${a.endSN}]`),i===this.trackId&&this.playlistLoaded(i,t,r)):this.warn(`Audio track with id:${i} and group:${s} not found in active group `+(null==n?void 0:n.groupId))}onLevelLoading(e,t){this.switchLevel(t.level)}onLevelSwitching(e,t){this.switchLevel(t.level)}switchLevel(s){s=this.hls.levels[s];if(s){let t=s.audioGroups||null,r=this.groupIds,i=this.currentTrack;if(!t||(null==r?void 0:r.length)!==(null==t?void 0:t.length)||null!=t&&t.some(e=>-1===(null==r?void 0:r.indexOf(e)))){this.groupIds=t,this.trackId=-1,this.currentTrack=null;s=this.tracks.filter(e=>!t||-1!==t.indexOf(e.groupId));if(s.length)this.selectDefaultTrack&&!s.some(e=>e.default)&&(this.selectDefaultTrack=!1),s.forEach((e,t)=>{e.id=t});else if(!i&&!this.tracksInGroup.length)return;this.tracksInGroup=s;var a=this.hls.config.audioPreference;!i&&a&&(n=Ko(a,s,Wo),i=-1{var a=e[t],n=e.reduce((e,t,r)=>{t=t.uri;return(e[t]||(e[t]=[])).push(r),e},{})[a.uri];1{if(e.videoRange!==o||e.frameRate!==l||e.codecSet.substring(0,4)!==h)return!1;let t=e.audioGroups;e=i.filter(e=>!t||-1!==t.indexOf(e.groupId));return-1{let t=e.audioGroups;e=i.filter(e=>!t||-1!==t.indexOf(e.groupId));return-1=i.length?this.warn("Invalid audio track id: "+e):(this.selectDefaultTrack=!1,t=this.currentTrack,r=(i=i[e]).details&&!i.details.live,e===this.trackId&&i===t&&r||(this.log(`Switching to audio-track ${e} "${i.name}" lang:${i.lang} group:${i.groupId} channels:`+i.channels),this.trackId=e,this.currentTrack=i,this.hls.trigger(X.AUDIO_TRACK_SWITCHING,Fs({},i)),r)||(e=this.switchParams(i.url,null==t?void 0:t.details,i.details),this.loadPlaylist(e)))}findTrackId(t){var r=this.tracksInGroup;for(let e=0;e{this.append({label:"async-blocker",execute:e,onStart:()=>{},onComplete:()=>{},onError:()=>{}},t)})}prependBlocker(t){return new Promise(e=>{this.queues&&this.queues[t].unshift({label:"async-blocker-prepend",execute:e,onStart:()=>{},onComplete:()=>{},onError:()=>{}})})}removeBlockers(){null!==this.queues&&[this.queues.video,this.queues.audio,this.queues.audiovideo].forEach(e=>{var t=null==(t=e[0])?void 0:t.label;"async-blocker"!==t&&"async-blocker-prepend"!==t||(e[0].execute(),e.splice(0,1))})}unblockAudio(e){null!==this.queues&&this.queues.audio[0]===e&&this.shiftAndExecuteNext("audio")}executeNext(t){if(null!==this.queues&&null!==this.tracks){var r=this.queues[t];if(r.length){var r=r[0];try{r.execute()}catch(e){r.onError(e),null===this.queues||null===this.tracks||null!=(r=null==(r=this.tracks[t])?void 0:r.buffer)&&r.updating||this.shiftAndExecuteNext(t)}}}}shiftAndExecuteNext(e){null!==this.queues&&(this.queues[e].shift(),this.executeNext(e))}current(e){var t;return(null==(t=this.queues)?void 0:t[e][0])||null}toString(){var{queues:e,tracks:t}=this;return null===e||null===t?"":` ${this.list("video")} ${this.list("audio")} ${this.list("audiovideo")}}`}list(e){var t;return null!=(t=this.queues)&&t[e]||null!=(t=this.tracks)&&t[e]?`${e}: (${this.listSbInfo(e)}) `+this.listOps(e):""}listSbInfo(e){var t=null==(t=this.tracks)?void 0:t[e],e=null==t?void 0:t.buffer;return e?"SourceBuffer"+(e.updating?" updating":"")+(t.ended?" ended":"")+(t.ending?" ending":""):"none"}listOps(e){var t;return(null==(t=this.queues)?void 0:t[e].map(e=>e.label).join(", "))||""}}let Ii=/(avc[1234]|hvc1|hev1|dvh[1e]|vp09|av01)(?:\.[^.,]+)+/,Ci="HlsJsTrackRemovedError";class Of extends Error{constructor(e){super(e),this.name=Ci}}class Mf extends Vu{constructor(e,t){super("buffer-controller",e.logger),this.hls=void 0,this.fragmentTracker=void 0,this.details=null,this._objectUrl=null,this.operationQueue=null,this.bufferCodecEventsTotal=0,this.media=null,this.mediaSource=null,this.lastMpegAudioChunk=null,this.blockedAudioAppend=null,this.lastVideoAppendEnd=0,this.appendSource=void 0,this.transferData=void 0,this.overrides=void 0,this.appendErrors={audio:0,video:0,audiovideo:0},this.tracks={},this.sourceBuffers=[[null,null],[null,null]],this._onEndStreaming=e=>{var t;this.hls&&"open"===(null==(t=this.mediaSource)?void 0:t.readyState)&&this.hls.pauseBuffering()},this._onStartStreaming=e=>{this.hls&&this.hls.resumeBuffering()},this._onMediaSourceOpen=e=>{var{media:t,mediaSource:r}=this;e&&this.log("Media source opened"),t&&r&&(r.removeEventListener("sourceopen",this._onMediaSourceOpen),t.removeEventListener("emptied",this._onMediaEmptied),this.updateDuration(),this.hls.trigger(X.MEDIA_ATTACHED,{media:t,mediaSource:r}),null!==this.mediaSource)&&this.checkPendingTracks()},this._onMediaSourceClose=()=>{this.log("Media source closed")},this._onMediaSourceEnded=()=>{this.log("Media source ended")},this._onMediaEmptied=()=>{var{mediaSrc:e,_objectUrl:t}=this;e!==t&&this.error(`Media element src was set while attaching MediaSource (${t} > ${e})`)},this.hls=e,this.fragmentTracker=t,this.appendSource=(t=Yn(e.config.preferManagedMediaSource),"undefined"!=typeof self&&t===self.ManagedMediaSource),this.initTracks(),this.registerListeners()}hasSourceTypes(){return 0{var[t]=e;t&&(i[t]=Ms({},this.tracks[t]),this.removeBuffer(t)),e[0]=e[1]=null}),{media:t,mediaSource:r,tracks:i}}initTracks(){this.sourceBuffers=[[null,null],[null,null]],this.tracks={},this.resetQueue(),this.resetAppendErrors(),this.lastMpegAudioChunk=this.blockedAudioAppend=null,this.lastVideoAppendEnd=0}onManifestLoading(){this.bufferCodecEventsTotal=0,this.details=null}onManifestParsed(e,t){let r,i=2;(!t.audio||t.video)&&t.altAudio||(i=1),this.bufferCodecEventsTotal=i,this.log(i+" bufferCodec event(s) expected."),null!=(r=this.transferData)&&r.mediaSource&&this.sourceBufferCount&&i&&this.bufferCreated()}onMediaAttaching(e,t){var r,i,s,a=this.media=t.media,n=Yn(this.appendSource);if(this.transferData=this.overrides=void 0,a&&n){var o=!!t.mediaSource,t=((o||t.overrides)&&(this.transferData=t,this.overrides=t.overrides),this.mediaSource=t.mediaSource||new n);if(this.assignMediaSource(t),o)this._objectUrl=a.src,this.attachTransferred();else{n=this._objectUrl=self.URL.createObjectURL(t);if(this.appendSource)try{a.removeAttribute("src");var l=self.ManagedMediaSource;a.disableRemotePlayback=a.disableRemotePlayback||l&&t instanceof l,fd(a),r=a,i=n,(s=self.document.createElement("source")).type="video/mp4",s.src=i,r.appendChild(s),a.load()}catch(e){a.src=n}else a.src=n}a.addEventListener("emptied",this._onMediaEmptied)}}assignMediaSource(e){var t;this.log(`${(null==(t=this.transferData)?void 0:t.mediaSource)===e?"transferred":"created"} media source: `+(null==(t=e.constructor)?void 0:t.name)),e.addEventListener("sourceopen",this._onMediaSourceOpen),e.addEventListener("sourceended",this._onMediaSourceEnded),e.addEventListener("sourceclose",this._onMediaSourceClose),this.appendSource&&(e.addEventListener("startstreaming",this._onStartStreaming),e.addEventListener("endstreaming",this._onEndStreaming))}attachTransferred(){var e=this.media,t=this.transferData;if(t&&e){var r=this.tracks;let n=t.tracks;var i,s=n?Object.keys(n):null,a=s?s.length:0,o=()=>{this.media&&this.mediaSourceOpenOrEnded&&this._onMediaSourceOpen()};if(n&&s&&a)if(this.tracksReady){if(this.log(`attachTransferred: (bufferCodecEventsTotal ${this.bufferCodecEventsTotal}) required tracks: ${$(r,(e,t)=>"initSegment"===e?void 0:t)}; transfer tracks: ${$(n,(e,t)=>"initSegment"===e?void 0:t)}}`),!Wn(n,r))return t.mediaSource=null,t.tracks=void 0,a=e.currentTime,i=this.details,1<(i=Math.max(a,(null==i?void 0:i.fragments[0].start)||0))-a?void this.log(`attachTransferred: waiting for playback to reach new tracks start time ${a} -> `+i):(this.warn(`attachTransferred: resetting MediaSource for incompatible tracks ("${Object.keys(n)}"->"${Object.keys(r)}") start time: ${i} currentTime: `+a),this.onMediaDetaching(X.MEDIA_DETACHING,{}),this.onMediaAttaching(X.MEDIA_ATTACHING,t),void(e.currentTime=i));this.transferData=void 0,s.forEach(e=>{var t,r,i,s,a=n[e];a&&(t=a.buffer)&&(r=this.fragmentTracker,i=a.id,(r.hasFragments(i)||r.hasParts(i))&&(s=qs.getBuffered(t),r.detectEvictedFragments(e,s,i,null,!0)),this.sourceBuffers[pd(e)]=[e,t],t.updating&&this.operationQueue&&this.operationQueue.prependBlocker(e),this.trackSourceBuffer(e,a))}),o(),this.bufferCreated()}else this.hls.config.startFragPrefetch=!0,this.log("attachTransferred: waiting for SourceBuffer track info");else this.log("attachTransferred: MediaSource w/o SourceBuffers"),o()}}get mediaSourceOpenOrEnded(){var e=null==(e=this.mediaSource)?void 0:e.readyState;return"open"===e||"ended"===e}onMediaDetaching(e,t){var r=!!t.transferMedia,{media:i,mediaSource:s,_objectUrl:a}=(this.transferData=this.overrides=void 0,this);if(s){if(this.log("media source "+(r?"transferring":"detaching")),r)this.sourceBuffers.forEach(([e])=>{e&&this.removeBuffer(e)}),this.resetQueue();else{if(this.mediaSourceOpenOrEnded){var n="open"===s.readyState;try{var o=s.sourceBuffers;for(let e=o.length;e--;)n&&o[e].abort(),s.removeSourceBuffer(o[e]);n&&s.endOfStream()}catch(e){this.warn(`onMediaDetaching: ${e.message} while calling endOfStream`)}}this.sourceBufferCount&&this.onBufferReset()}s.removeEventListener("sourceopen",this._onMediaSourceOpen),s.removeEventListener("sourceended",this._onMediaSourceEnded),s.removeEventListener("sourceclose",this._onMediaSourceClose),this.appendSource&&(s.removeEventListener("startstreaming",this._onStartStreaming),s.removeEventListener("endstreaming",this._onEndStreaming)),this.mediaSource=null,this._objectUrl=null}i&&(i.removeEventListener("emptied",this._onMediaEmptied),r||(a&&self.URL.revokeObjectURL(a),this.mediaSrc===a?(i.removeAttribute("src"),this.appendSource&&fd(i),i.load()):this.warn("media|source.src was changed by a third party - skip cleanup")),this.media=null),this.hls.trigger(X.MEDIA_DETACHED,t)}onBufferReset(){this.sourceBuffers.forEach(([e])=>{e&&this.resetBuffer(e)}),this.initTracks()}resetBuffer(t){var e,r=null==(r=this.tracks[t])?void 0:r.buffer;if(this.removeBuffer(t),r)try{null!=(e=this.mediaSource)&&e.sourceBuffers.length&&this.mediaSource.removeSourceBuffer(r)}catch(e){this.warn("onBufferReset "+t,e)}delete this.tracks[t]}removeBuffer(e){this.removeBufferListeners(e),this.sourceBuffers[pd(e)]=[null,null];e=this.tracks[e];e&&(e.buffer=void 0)}resetQueue(){this.operationQueue&&this.operationQueue.destroy(),this.operationQueue=new xf(this.tracks)}onBufferCodecs(e,c){let u=this.tracks;var t=Object.keys(c),r=(this.log(`BUFFER_CODECS: "${t}" (current SB count ${this.sourceBufferCount})`),"audiovideo"in c&&(u.audio||u.video)||u.audiovideo&&("audio"in c||"video"in c)),i=!r&&this.sourceBufferCount&&this.media&&t.some(e=>!u[e]);r||i?this.warn(`Unsupported transition between "${Object.keys(u)}" and "${t}" SourceBuffers`):(t.forEach(e=>{var{id:t,codec:r,levelCodec:i,container:s,metadata:a,supplemental:n}=c[e];let o=u[e];var l=null==(l=this.transferData)||null==(l=l.tracks)?void 0:l[e],l=null!=l&&l.buffer?l:o,h=(null==l?void 0:l.pendingCodec)||(null==l?void 0:l.codec),l=null==l?void 0:l.levelCodec,n=(o=o||(u[e]={buffer:void 0,listeners:[],codec:r,supplemental:n,container:s,levelCodec:i,metadata:a,id:t}),Do(h,l)),a=null==n?void 0:n.replace(Ii,"$1");let d=Do(r,i);l=null==(t=d)?void 0:t.replace(Ii,"$1");d&&n&&a!==l&&("audio"===e.slice(0,5)&&(d=Po(d,this.appendSource)),this.log(`switching codec ${h} to `+d),d!==(o.pendingCodec||o.codec)&&(o.pendingCodec=d),o.container=s,this.appendChangeType(e,s,d))}),(this.tracksReady||this.sourceBufferCount)&&(c.tracks=this.sourceBufferTracks),this.sourceBufferCount||this.mediaSourceOpenOrEnded&&this.checkPendingTracks())}get sourceBufferTracks(){return Object.keys(this.tracks).reduce((e,t)=>{var r=this.tracks[t];return e[t]={id:r.id,container:r.container,codec:r.codec,levelCodec:r.levelCodec},e},{})}appendChangeType(r,i,s){let a=i+";codecs="+s;var e={label:"change-type="+a,execute:()=>{var e,t=this.tracks[r];t&&null!=(e=t.buffer)&&e.changeType&&(this.log(`changing ${r} sourceBuffer type to `+a),e.changeType(a),t.codec=s,t.container=i),this.shiftAndExecuteNext(r)},onStart:()=>{},onComplete:()=>{},onError:e=>{this.warn(`Failed to change ${r} SourceBuffer type`,e)}};this.append(e,r,this.isPending(this.tracks[r]))}blockAudio(e){var t=e.start;let r=t+.05*e.duration;!0!==(null==(t=this.fragmentTracker.getAppendedFrag(t,Os))?void 0:t.gap)&&(this.blockedAudioAppend={op:t={label:"block-audio",execute:()=>{var e=this.tracks.video;(this.lastVideoAppendEnd>r||null!=e&&e.buffer&&qs.isBuffered(e.buffer,r)||!0===(null==(e=this.fragmentTracker.getAppendedFrag(r,Os))?void 0:e.gap))&&(this.blockedAudioAppend=null,this.shiftAndExecuteNext("audio"))},onStart:()=>{},onComplete:()=>{},onError:e=>{this.warn("Error executing block-audio operation",e)}},frag:e},this.append(t,"audio",!0))}unblockAudio(){var{blockedAudioAppend:e,operationQueue:t}=this;e&&t&&(this.blockedAudioAppend=null,t.unblockAudio(e.op))}onBufferAppending(e,t){var r=this.tracks;let{data:i,type:s,parent:a,frag:n,part:o,chunkMeta:l}=t,h=l.buffering[s],d=n.sn;t=self.performance.now();h.start=t;let c=n.stats.buffering,u=o?o.stats.buffering:null;0===c.start&&(c.start=t),u&&0===u.start&&(u.start=t);t=r.audio;let f=!1;"audio"===s&&"audio/mpeg"===(null==t?void 0:t.container)&&(f=!this.lastMpegAudioChunk||1===l.id||this.lastMpegAudioChunk.sn!==l.sn,this.lastMpegAudioChunk=l);var p,g,r=this.tracks.video,t=null==r?void 0:r.buffer;t&&"initSegment"!==d&&(r=o||n,p=this.blockedAudioAppend,"audio"!==s||"main"===a||this.blockedAudioAppend?"video"===s&&(v=r.end,p&&((p=p.frag.start){var e,t;h.executeStart=self.performance.now(),f&&(e=this.tracks[s])&&(e=e.buffer)&&(t=m-e.timestampOffset,.1<=Math.abs(t))&&(this.log(`Updating audio SourceBuffer timestampOffset to ${m} (delta: ${t}) sn: ${d})`),e.timestampOffset=m),this.appendExecutor(i,s)},onStart:()=>{},onComplete:()=>{var e=self.performance.now();h.executeEnd=h.end=e,0===c.first&&(c.first=e),u&&0===u.first&&(u.first=e);let r={};this.sourceBuffers.forEach(([e,t])=>{e&&(r[e]=qs.getBuffered(t))}),this.appendErrors[s]=0,"audio"===s||"video"===s?this.appendErrors.audiovideo=0:(this.appendErrors.audio=0,this.appendErrors.video=0),this.hls.trigger(X.BUFFER_APPENDED,{type:s,frag:n,part:o,chunkMeta:l,parent:n.type,timeRanges:r})},onError:e=>{var t={type:W.MEDIA_ERROR,parent:n.type,details:q.BUFFER_APPEND_ERROR,sourceBufferName:s,frag:n,part:o,chunkMeta:l,error:e,err:e,fatal:!1},r=null==(r=this.media)?void 0:r.error;e.code===DOMException.QUOTA_EXCEEDED_ERR?t.details=q.BUFFER_FULL_ERROR:e.code===DOMException.INVALID_STATE_ERR&&this.mediaSourceOpenOrEnded&&!r||e.name===Ci&&0===this.sourceBufferCount?t.errorAction=fl(!0):(e=++this.appendErrors[s],this.warn(`Failed ${e}/${this.hls.config.appendErrorMaxRetry} times to append segment in "${s}" sourceBuffer (${r||"no media error"})`),(e>=this.hls.config.appendErrorMaxRetry||r)&&(t.fatal=!0)),this.hls.trigger(X.ERROR,t)}};this.append(v,s,this.isPending(this.tracks[s]))}getFlushOp(t,r,i){return this.log(`queuing "${t}" remove ${r}-`+i),{label:"remove",execute:()=>{this.removeExecutor(t,r,i)},onStart:()=>{},onComplete:()=>{this.hls.trigger(X.BUFFER_FLUSHED,{type:t})},onError:e=>{this.warn(`Failed to remove ${r}-${i} from "${t}" SourceBuffer`,e)}}}onBufferFlushing(e,t){let{type:r,startOffset:i,endOffset:s}=t;r?this.append(this.getFlushOp(r,i,s),r):this.sourceBuffers.forEach(([e])=>{e&&this.append(this.getFlushOp(e,i,s),e)})}onFragParsed(e,t){let{frag:r,part:i}=t;var t=[],s=(i||r).elementaryStreams;s[ao]?t.push("audiovideo"):(s[io]&&t.push("audio"),s[so]&&t.push("video"));0===t.length&&this.warn(`Fragments must have at least one ElementaryStreamType set. type: ${r.type} level: ${r.level} sn: `+r.sn),this.blockBuffers(()=>{var e=self.performance.now(),e=(r.stats.buffering.end=e,i&&(i.stats.buffering.end=e),(i||r).stats);this.hls.trigger(X.FRAG_BUFFERED,{frag:r,part:i,stats:e,id:r.type})},t).catch(e=>{this.warn("Fragment buffered callback "+e),this.stepOperationQueue(this.sourceBufferTypes)})}onFragChanged(e,t){this.trimBuffers()}get bufferedToEnd(){return 0{var t;return e&&(!(null!=(t=this.tracks[e])&&t.ended)||(null==(t=this.tracks[e])?void 0:t.ending))})}onBufferEos(e,r){this.sourceBuffers.forEach(([e])=>{var t;e&&(t=this.tracks[e],r.type&&r.type!==e||(t.ending=!0,t.ended)||(t.ended=!0,this.log(e+" buffer reached EOS")))});var t=!1!==(null==(t=this.overrides)?void 0:t.endOfStream);0e&&!(null!=(e=this.tracks[e])&&e.ended))&&(t?(this.log("Queueing EOS"),this.blockUntilOpen(()=>{this.tracksEnded();var e=this.mediaSource;e&&"open"===e.readyState?(this.log("Calling mediaSource.endOfStream()"),e.endOfStream(),this.hls.trigger(X.BUFFERED_TO_END,void 0)):e&&this.log("Could not call mediaSource.endOfStream(). mediaSource.readyState: "+e.readyState)})):(this.tracksEnded(),this.hls.trigger(X.BUFFERED_TO_END,void 0)))}tracksEnded(){this.sourceBuffers.forEach(([e])=>{null!==e&&(e=this.tracks[e])&&(e.ending=!1)})}onLevelUpdated(e,{details:t}){t.fragments.length&&(this.details=t,this.updateDuration())}updateDuration(){let e=this.getDurationAndRange();e&&this.blockUntilOpen(()=>this.updateMediaSource(e))}onError(e,t){var r;t.details===q.BUFFER_APPEND_ERROR&&t.frag&&(r=null==(r=t.errorAction)?void 0:r.nextAutoLevel,H(r))&&r!==t.frag.level&&this.resetAppendErrors()}resetAppendErrors(){this.appendErrors={audio:0,video:0,audiovideo:0}}trimBuffers(){var e,{hls:t,details:r,media:i}=this;i&&null!==r&&this.sourceBufferCount&&(t=t.config,i=i.currentTime,e=r.levelTargetDuration,r=r.live&&null!==t.liveBackBufferLength?t.liveBackBufferLength:t.backBufferLength,H(r)&&0<=r&&(r=Math.max(r,e),r=Math.floor(i/e)*e-r,this.flushBackBuffer(i,e,r)),H(t.frontBufferFlushThreshold))&&0{if(t){t=qs.getBuffered(t);if(0t.start(0)){this.hls.trigger(X.BACK_BUFFER_REACHED,{bufferEnd:i});var r,t=this.tracks[e];if(null!=(r=this.details)&&r.live)this.hls.trigger(X.LIVE_BACK_BUFFER_REACHED,{bufferEnd:i});else if(null!=t&&t.ended)return void this.log(`Cannot flush ${e} back buffer while SourceBuffer is in ended state`);this.hls.trigger(X.BUFFER_FLUSHING,{startOffset:0,endOffset:i,type:e})}}})}flushFrontBuffer(s,e,a){this.sourceBuffers.forEach(([e,t])=>{var r,i;!t||(r=(t=qs.getBuffered(t)).length)<2||(i=t.start(r-1),t=t.end(r-1),i=this.bufferCodecEventsTotal||this.isPending(this.tracks.audiovideo))}checkPendingTracks(){var{bufferCodecEventsTotal:e,pendingTrackCount:t,tracks:r}=this;this.log(`checkPendingTracks (pending: ${t} codec events expected: ${e}) `+$(r)),this.tracksReady&&((e=null==(t=this.transferData)?void 0:t.tracks)&&Object.keys(e).length?this.attachTransferred():this.createSourceBuffers())}bufferCreated(){if(this.sourceBufferCount){let i={};this.sourceBuffers.forEach(([e,t])=>{var r;e&&(r=this.tracks[e],i[e]={buffer:t,container:r.container,codec:r.codec,supplemental:r.supplemental,levelCodec:r.levelCodec,id:r.id,metadata:r.metadata})}),this.hls.trigger(X.BUFFER_CREATED,{tracks:i}),this.log("SourceBuffers created. Running queue: "+this.operationQueue),this.sourceBuffers.forEach(([e])=>{this.executeNext(e)})}else{var e=new Error("could not create source buffer for media codec(s)");this.hls.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.BUFFER_INCOMPATIBLE_CODECS_ERROR,fatal:!0,error:e,reason:e.message})}}createSourceBuffers(){var e,{tracks:t,sourceBuffers:r,mediaSource:i}=this;if(!i)throw new Error("createSourceBuffers called when mediaSource was null");for(e in t){var s=e,a=t[s];if(this.isPending(a)){var n=this.getTrackCodec(a,s),o=a.container+";codecs="+n;a.codec=n,this.log(`creating sourceBuffer(${o})${this.currentOp(s)?" Queued":""} `+$(a));try{var l=i.addSourceBuffer(o),h=[s,l];r[pd(s)]=h,a.buffer=l}catch(e){return this.error("error while trying to add sourceBuffer: "+e.message),this.shiftAndExecuteNext(s),null!=(n=this.operationQueue)&&n.removeBlockers(),delete this.tracks[s],void this.hls.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:e,sourceBufferName:s,mimeType:o,parent:a.id})}this.trackSourceBuffer(s,a)}}this.bufferCreated()}getTrackCodec(e,t){var r=e.supplemental;let i=e.codec;r=Do(i=r&&("video"===t||"audiovideo"===t)&&Lo(r,"video")?((e,t)=>{var r=[];if(e){var i=e.split(",");for(let e=0;e{t=t.removedRanges;null!=t&&t.length&&this.hls.trigger(X.BUFFER_FLUSHED,{type:e})})}get mediaSrc(){var e,t=(null==(e=this.media)||null==(t=e.querySelector)?void 0:t.call(e,"source"))||this.media;return null==t?void 0:t.src}onSBUpdateStart(e){e=this.currentOp(e);e&&e.onStart()}onSBUpdateEnd(e){var t;"closed"===(null==(t=this.mediaSource)?void 0:t.readyState)?this.resetBuffer(e):(t=this.currentOp(e))&&(t.onComplete(),this.shiftAndExecuteNext(e))}onSBUpdateError(e,t){var r=new Error(e+" SourceBuffer error. MediaSource readyState: "+(null==(r=this.mediaSource)?void 0:r.readyState)),t=(this.error(""+r,t),this.hls.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.BUFFER_APPENDING_ERROR,sourceBufferName:e,error:r,fatal:!1}),this.currentOp(e));t&&t.onError(r)}removeExecutor(e,t,r){var{media:i,mediaSource:s}=this,a=this.tracks[e],n=null==a?void 0:a.buffer;i&&s&&n?(i=H(i.duration)?i.duration:1/0,s=H(s.duration)?s.duration:1/0,(t=Math.max(0,t))<(r=Math.min(r,i,s))&&(!a.ending||a.ended)?(a.ended=!1,this.log(`Removing [${t},${r}] from the ${e} SourceBuffer`),n.remove(t,r)):this.shiftAndExecuteNext(e)):(this.warn(`Attempting to remove from the ${e} SourceBuffer, but it does not exist`),this.shiftAndExecuteNext(e))}appendExecutor(e,t){var r=this.tracks[t],i=null==r?void 0:r.buffer;if(!i)throw new Of(`Attempting to append to the ${t} SourceBuffer, but it does not exist`);r.ending=!1,r.ended=!1,i.appendBuffer(e)}blockUntilOpen(e){if(this.isUpdating()||this.isQueued())this.blockBuffers(e).catch(e=>{this.warn("SourceBuffer blocked callback "+e),this.stepOperationQueue(this.sourceBufferTypes)});else try{e()}catch(e){this.warn(`Callback run without blocking ${this.operationQueue} `+e)}}isUpdating(){return this.sourceBuffers.some(([e,t])=>e&&t.updating)}isQueued(){return this.sourceBuffers.some(([e])=>e&&!!this.currentOp(e))}isPending(e){return!!e&&!e.buffer}blockBuffers(t,e=this.sourceBufferTypes){if(!e.length)return this.log("Blocking operation requested, but no SourceBuffers exist"),Promise.resolve().then(t);let r=this.operationQueue;var i=e.map(e=>this.appendBlocker(e));return 1{r===this.operationQueue&&(t(),this.stepOperationQueue(this.sourceBufferTypes))})}stepOperationQueue(e){e.forEach(e=>{var t=null==(t=this.tracks[e])?void 0:t.buffer;t&&!t.updating&&this.shiftAndExecuteNext(e)})}append(e,t,r){this.operationQueue&&this.operationQueue.append(e,t,r)}appendBlocker(e){if(this.operationQueue)return this.operationQueue.appendBlocker(e)}currentOp(e){return this.operationQueue?this.operationQueue.current(e):null}executeNext(e){e&&this.operationQueue&&this.operationQueue.executeNext(e)}shiftAndExecuteNext(e){this.operationQueue&&this.operationQueue.shiftAndExecuteNext(e)}get pendingTrackCount(){return Object.keys(this.tracks).reduce((e,t)=>e+(this.isPending(this.tracks[t])?1:0),0)}get sourceBufferCount(){return this.sourceBuffers.reduce((e,[t])=>e+(t?1:0),0)}get sourceBufferTypes(){return this.sourceBuffers.map(([e])=>e).filter(e=>!!e)}addBufferListener(e,t,r){var i,s=this.tracks[e];s&&(i=s.buffer)&&(r=r.bind(this,e),s.listeners.push({event:t,listener:r}),i.addEventListener(t,r))}removeBufferListeners(e){e=this.tracks[e];if(e){let t=e.buffer;t&&(e.listeners.forEach(e=>{t.removeEventListener(e.event,e.listener)}),e.listeners.length=0)}}}function fd(t){var e=t.querySelectorAll("source");[].slice.call(e).forEach(e=>{t.removeChild(e)})}function pd(e){return"audio"===e?1:0}class Ff{constructor(e){this.hls=void 0,this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.clientRect=void 0,this.streamController=void 0,this.hls=e,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}setStreamController(e){this.streamController=e}destroy(){this.hls&&this.unregisterListener(),this.timer&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null}registerListeners(){var e=this.hls;e.on(X.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),e.on(X.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(X.MANIFEST_PARSED,this.onManifestParsed,this),e.on(X.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(X.BUFFER_CODECS,this.onBufferCodecs,this),e.on(X.MEDIA_DETACHING,this.onMediaDetaching,this)}unregisterListener(){var e=this.hls;e.off(X.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),e.off(X.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(X.MANIFEST_PARSED,this.onManifestParsed,this),e.off(X.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(X.BUFFER_CODECS,this.onBufferCodecs,this),e.off(X.MEDIA_DETACHING,this.onMediaDetaching,this)}onFpsDropLevelCapping(e,t){t=this.hls.levels[t.droppedLevel];this.isLevelAllowed(t)&&this.restrictedLevels.push({bitrate:t.bitrate,height:t.height,width:t.width})}onMediaAttaching(e,t){this.media=t.media instanceof HTMLVideoElement?t.media:null,this.clientRect=null,this.timer&&this.hls.levels.length&&this.detectPlayerSize()}onManifestParsed(e,t){var r=this.hls;this.restrictedLevels=[],this.firstLevel=t.firstLevel,r.config.capLevelToPlayerSize&&t.video&&this.startCapping()}onLevelsUpdated(e,t){this.timer&&H(this.autoLevelCapping)&&this.detectPlayerSize()}onBufferCodecs(e,t){this.hls.config.capLevelToPlayerSize&&t.video&&this.startCapping()}onMediaDetaching(){this.stopCapping(),this.media=null}detectPlayerSize(){var e,t,r;this.media&&(this.mediaHeight<=0||this.mediaWidth<=0?this.clientRect=null:(e=this.hls.levels).length&&(t=this.hls,(r=this.getMaxLevel(e.length-1))!==this.autoLevelCapping&&t.logger.log(`Setting autoLevelCapping to ${r}: ${e[r].height}p@${e[r].bitrate} for media ${this.mediaWidth}x`+this.mediaHeight),t.autoLevelCapping=r,t.autoLevelEnabled&&t.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=t.autoLevelCapping))}getMaxLevel(r){var e=this.hls.levels;return e.length?(e=e.filter((e,t)=>this.isLevelAllowed(e)&&t<=r),this.clientRect=null,Ff.getMaxLevelByMediaSize(e,this.mediaWidth,this.mediaHeight)):-1}startCapping(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())}stopCapping(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)}getDimensions(){var e,t,r;return this.clientRect||(t={width:0,height:0},(e=this.media)&&(r=e.getBoundingClientRect(),t.width=r.width,t.height=r.height,t.width||t.height||(t.width=r.right-r.left||e.width||0,t.height=r.bottom-r.top||e.height||0)),this.clientRect=t)}get mediaWidth(){return this.getDimensions().width*this.contentScaleFactor}get mediaHeight(){return this.getDimensions().height*this.contentScaleFactor}get contentScaleFactor(){let e=1;if(!this.hls.config.ignoreDevicePixelRatio)try{e=self.devicePixelRatio}catch(e){}return Math.min(e,this.hls.config.maxDevicePixelRatio)}isLevelAllowed(t){return!this.restrictedLevels.some(e=>t.bitrate===e.bitrate&&t.width===e.width&&t.height===e.height)}static getMaxLevelByMediaSize(t,e,r){if(null==t||!t.length)return-1;let i=t.length-1;var s,a=Math.max(e,r);for(let e=0;e=a||n.height>=a)&&(n=n,!(s=t[e+1])||n.width!==s.width||n.height!==s.height)){i=e;break}}return i}}let A={MANIFEST:"m",AUDIO:"a",VIDEO:"v",MUXED:"av",INIT:"i",CAPTION:"c",TIMED_TEXT:"tt",KEY:"k",OTHER:"o"},Pi={HLS:"h"},Di={OBJECT:"CMCD-Object",REQUEST:"CMCD-Request",SESSION:"CMCD-Session",STATUS:"CMCD-Status"},xi={[Di.OBJECT]:["br","d","ot","tb"],[Di.REQUEST]:["bl","dl","mtp","nor","nrr","su"],[Di.SESSION]:["cid","pr","sf","sid","st","v"],[Di.STATUS]:["bs","rtp"]};class Nf{constructor(e,t){Array.isArray(e)&&(e=e.map(e=>e instanceof Nf?e:new Nf(e))),this.value=e,this.params=t}}let Oi="Dict";function gd(e,t,r,i){return new Error(`failed to ${e} "${e=t,Array.isArray(e)?JSON.stringify(e):e instanceof Map?"Map{}":e instanceof Set?"Set{}":"object"==typeof e?JSON.stringify(e):String(e)}" as `+r,{cause:i})}function md(e,t,r){return gd("serialize",e,t,r)}class Uf{constructor(e){this.description=e}}let Mi="Bare Item",Fi="Boolean",Ni="Byte Sequence";function vd(e){if(!1===ArrayBuffer.isView(e))throw md(e,Ni);return`:${e=e,btoa(String.fromCharCode(...e))}:`}let Ui="Integer";function yd(e){if((t=e)<-999999999999999||999999999999999!0===t?";"+_d(e):`;${_d(e)}=`+Td(t)).join("")}function Ad(e){return e instanceof Nf?""+Td(e.value)+Sd(e.params):Td(e)}function wd(e,t={whitespace:!0}){if("object"!=typeof e)throw md(e,Oi);e=e instanceof Map?e.entries():Object.entries(e),t=null!=t&&t.whitespace?" ":"";return Array.from(e).map(([e,t])=>{t instanceof Nf==!1&&(t=new Nf(t));let r=_d(e);return!0===t.value?r+=Sd(t.params):(r+="=",Array.isArray(t.value)?r+=`(${(e=t).value.map(Ad).join(" ")})`+Sd(e.params):r+=Ad(t)),r}).join(","+t)}let ji=e=>Math.round(e),zi=(Ls=e=>100*ji(e/100),{br:ji,d:ji,bl:Ls,dl:Ls,mtp:Ls,nor:(e,t)=>(null!=t&&t.baseUrl&&(e=((e,t)=>{var r=new URL(e),t=new URL(t);if(r.origin!==t.origin)return e;for(var i=r.pathname.split("/").slice(1),s=t.pathname.split("/").slice(1,-1);i[0]===s[0];)i.shift(),s.shift();for(;s.length;)s.shift(),i.unshift("..");return i.join("/")})(e,t.baseUrl)),encodeURIComponent(e)),rtp:Ls,tb:ji});function Ld(s,a){let n={};if(null!=s&&"object"==typeof s){var t=Object.keys(s).sort();let i=Ms({},zi,null==a?void 0:a.formatters),e=null==a?void 0:a.filter;t.forEach(t=>{if(null==e||!e(t)){let e=s[t];var r=i[t];r&&(e=r(e,a)),"v"===t&&1===e||"pr"==t&&1===e||("number"==typeof(r=e)?H(r):null!=r&&""!==r&&!1!==r)&&("ot"!==(r=t)&&"sf"!==r&&"st"!==r||"string"!=typeof e||(e=new Uf(e)),n[t]=e)}})}return n}function kd(e,t={}){return e?wd(Ld(e,t),Ms({whitespace:!1},t)):""}function Rd(e,t,r){Ms(e,((e,i={})=>{var t={};if(!e)return t;e=Object.entries(e);let a=Object.entries(xi).concat(Object.entries((null==i?void 0:i.customHeaderMap)||{}));return e=e.reduce((e,t)=>{let r,[i,s]=t;t=(null==(r=a.find(e=>e[1].includes(i)))?void 0:r[0])||Di.REQUEST;return null==e[t]&&(e[t]={}),e[t][i]=s,e},{}),Object.entries(e).reduce((e,[t,r])=>(e[t]=kd(r,i),e),t)})(t,r))}let Ki="CMCD",Yi=/CMCD=[^&#]+/;function Id(e,t,r){[t,r={}]=[t,r];r=t?(t=kd(t,r),Ki+"="+encodeURIComponent(t)):"";return r?Yi.test(e)?e.replace(Yi,r):(t=e.includes("?")?"&":"?",e+t+r):e}class Bf extends Vu{constructor(e){super("content-steering",e.logger),this.hls=void 0,this.loader=null,this.uri=null,this.pathwayId=".",this._pathwayPriority=null,this.timeToLoad=300,this.reloadTimer=-1,this.updated=0,this.started=!1,this.enabled=!0,this.levels=null,this.audioTracks=null,this.subtitleTracks=null,this.penalizedPathways={},this.hls=e,this.registerListeners()}registerListeners(){var e=this.hls;e.on(X.MANIFEST_LOADING,this.onManifestLoading,this),e.on(X.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(X.MANIFEST_PARSED,this.onManifestParsed,this),e.on(X.ERROR,this.onError,this)}unregisterListeners(){var e=this.hls;e&&(e.off(X.MANIFEST_LOADING,this.onManifestLoading,this),e.off(X.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(X.MANIFEST_PARSED,this.onManifestParsed,this),e.off(X.ERROR,this.onError,this))}pathways(){return(this.levels||[]).reduce((e,t)=>(-1===e.indexOf(t.pathwayId)&&e.push(t.pathwayId),e),[])}get pathwayPriority(){return this._pathwayPriority}set pathwayPriority(e){this.updatePathwayPriority(e)}startLoad(){if(this.started=!0,this.clearTimeout(),this.enabled&&this.uri){if(this.updated){var e=1e3*this.timeToLoad-(performance.now()-this.updated);if(0e!==t))}onManifestLoading(){this.stopLoad(),this.enabled=!0,this.timeToLoad=300,this.updated=0,this.uri=null,this.pathwayId=".",this.levels=this.audioTracks=this.subtitleTracks=null}onManifestLoaded(e,t){t=t.contentSteering;null!==t&&(this.pathwayId=t.pathwayId,this.uri=t.uri,this.started)&&this.startLoad()}onManifestParsed(e,t){this.audioTracks=t.audioTracks,this.subtitleTracks=t.subtitleTracks}onError(e,r){var i=r.errorAction;if((null==i?void 0:i.action)===ol&&i.flags===cl){var s,a,n,o=this.levels;let e=this._pathwayPriority,t=this.pathwayId;r.context&&({groupId:s,pathwayId:a,type:n}=r.context,s&&o?t=this.getPathwayForGroupId(s,n,t):a&&(t=a)),t in this.penalizedPathways||(this.penalizedPathways[t]=performance.now()),(e=!e&&o?this.pathways():e)&&1t===e.pathwayId)}updatePathwayPriority(t){this._pathwayPriority=t;let r=this.penalizedPathways,i=performance.now();Object.keys(r).forEach(e=>{3e5{let{ID:a,"BASE-ID":t,"URI-REPLACEMENT":n}=e;r.some(e=>e.pathwayId===a)||(e=this.getLevelsForPathway(t).map(t=>{var e=new Xs(t.attrs),r=(e["PATHWAY-ID"]=a,e.AUDIO&&e.AUDIO+"_clone_"+a),i=e.SUBTITLES&&e.SUBTITLES+"_clone_"+a,r=(r&&(o[e.AUDIO]=r,e.AUDIO=r),i&&(l[e.SUBTITLES]=i,e.SUBTITLES=i),Pd(t.uri,e["STABLE-VARIANT-ID"],"PER-VARIANT-URIS",n)),s=new Yu({attrs:e,audioCodec:t.audioCodec,bitrate:t.bitrate,height:t.height,name:t.name,url:r,videoCodec:t.videoCodec,width:t.width});if(t.audioGroups)for(let e=1;e{this.log(`Loaded steering manifest: "${o}"`);e=e.data;if(1!==(null==e?void 0:e.VERSION))this.log(`Steering VERSION ${e.VERSION} not supported!`);else{this.updated=performance.now(),this.timeToLoad=e.TTL;var{"RELOAD-URI":s,"PATHWAY-CLONES":a,"PATHWAY-PRIORITY":n}=e;if(s)try{this.uri=new self.URL(s,o).href}catch(e){return this.enabled=!1,void this.log("Failed to parse Steering Manifest RELOAD-URI: "+s)}this.scheduleRefresh(this.uri||r.url),a&&this.clonePathways(a);s={steeringManifest:e,url:o.toString()};this.hls.trigger(X.STEERING_MANIFEST_LOADED,s),n&&this.updatePathwayPriority(n)}},onError:(t,r,e,i)=>{if(this.log(`Error loading steering manifest: ${t.code} ${t.text} (${r.url})`),this.stopLoad(),410===t.code)this.enabled=!1,this.log(`Steering manifest ${r.url} no longer available`);else{let e=1e3*this.timeToLoad;429===t.code?("function"==typeof(null==(t=this.loader)?void 0:t.getResponseHeader)&&(t=t.getResponseHeader("Retry-After"))&&(e=1e3*parseFloat(t)),this.log(`Steering manifest ${r.url} rate limited`)):this.scheduleRefresh(this.uri||r.url,e)}},onTimeout:(e,t,r)=>{this.log(`Timeout loading steering manifest (${t.url})`),this.scheduleRefresh(this.uri||t.url)}};this.log("Requesting steering manifest: "+o),this.loader.load(t,r,e)}scheduleRefresh(t,e=1e3*this.timeToLoad){this.clearTimeout(),this.reloadTimer=self.setTimeout(()=>{var e=null==(e=this.hls)?void 0:e.media;e&&!e.ended?this.loadSteeringManifest(t):this.scheduleRefresh(t,1e3*this.timeToLoad)},e)}}function Cd(t,i,s,a){t&&Object.keys(i).forEach(r=>{var e=t.filter(e=>e.groupId===r).map(e=>{var t=Ms({},e);return t.details=void 0,t.attrs=new Xs(t.attrs),t.url=t.attrs.URI=Pd(e.url,e.attrs["STABLE-RENDITION-ID"],"PER-RENDITION-URIS",s),t.groupId=t.attrs["GROUP-ID"]=i[r],t.attrs["PATHWAY-ID"]=a,t});t.push(...e)})}function Pd(e,t,r,i){let{HOST:s,PARAMS:a,[r]:n}=i,o,l=(t&&(o=null==n?void 0:n[t])&&(e=o),new self.URL(e));return s&&!o&&(l.host=s),a&&Object.keys(a).sort().forEach(e=>{e&&l.searchParams.set(e,a[e])}),l.href}class $f extends Vu{constructor(e){super("eme",e.logger),this.hls=void 0,this.config=void 0,this.media=null,this.keyFormatPromise=null,this.keySystemAccessPromises={},this._requestLicenseFailureCount=0,this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},this.setMediaKeysQueue=$f.CDMCleanupPromise?[$f.CDMCleanupPromise]:[],this.onMediaEncrypted=d=>{let{initDataType:c,initData:u}=d,s=`"${d.type}" event: init data type: "${c}"`;if(this.debug(s),null!==u){if(!this.keyFormatPromise){let e=Object.keys(this.keySystemAccessPromises);var t=(e=e.length?e:Kl(this.config)).map(zl).filter(e=>!!e);this.keyFormatPromise=this.getKeyFormatPromise(t)}this.keyFormatPromise.then(e=>{let t=Bl(e),a,i;if("sinf"===c){if(t!==Vs.FAIRPLAY)return void this.warn(`Ignoring unexpected "${d.type}" event with init data type: "${c}" for selected key-system `+t);e=Us(new Uint8Array(u));try{var r=mo(Pl(JSON.parse(e).sinf));if(!r)throw new Error("'schm' box missing or not cbcs/cenc with schi > tenc");a=new Uint8Array(r.subarray(8,24)),i=Vs.FAIRPLAY}catch(e){return void this.warn(s+" Failed to parse sinf: "+e)}}else{if(t!==Vs.WIDEVINE&&t!==Vs.PLAYREADY)return void this.warn(`Ignoring unexpected "${d.type}" event with init data type: "${c}" for selected key-system `+t);var e=Ao(u),r=e.filter(e=>!!e.systemId&&jl(e.systemId)===t),r=(1!e.systemId)?this.warn(s+" contains incomplete or invalid pssh data"):this.log(`ignoring ${s} for ${e.map(e=>jl(e.systemId)).join(",")} pssh data in favor of playlist keys`));i=jl(r.systemId),0===r.version&&r.data&&(i===Vs.WIDEVINE?(e=r.data.length-22,a=new Uint8Array(r.data.subarray(e,16+e))):i===Vs.PLAYREADY&&(a=Yl(r.data)))}if(i&&a){let s=b.hexDump(a);var{keyIdToKeySessionPromise:n,mediaKeySessions:o}=this;let r=n[s];for(let t=0;tthis.generateRequestWithPreferredKeySession(e,c,u,"encrypted-event-key-match"))).catch(e=>this.handleError(e));break}}}r||(i!==t?this.log(`Ignoring "${d.type}" event with ${i} init data for selected key-system `+t):(r=n[s]=this.getKeySystemSelectionPromise([i]).then(({keySystem:t,mediaKeys:r})=>{var e;this.throwIfDestroyed();let i=new lf("ISO-23001-7",s,null!=(e=zl(t))?e:"");return i.pssh=new Uint8Array(u),i.keyId=a,this.attemptSetMediaKeys(t,r).then(()=>{this.throwIfDestroyed();var e=this.createMediaKeySessionContext({decryptdata:i,keySystem:t,mediaKeys:r});return this.generateRequestWithPreferredKeySession(e,c,u,"encrypted-event-no-match")})})).catch(e=>this.handleError(e)))}})}},this.onWaitingForKey=e=>{this.log(`"${e.type}" event`)},this.hls=e,this.config=e.config,this.registerListeners()}destroy(){var e=this.media,e=(this.unregisterListeners(),this.onMediaDetached(),this._clear(e),this.config);e.requestMediaKeySystemAccessFunc=null,e.licenseXhrSetup=e.licenseResponseCallback=void 0,e.drmSystems=e.drmSystemOptions={},this.hls=this.config=this.keyIdToKeySessionPromise=null,this.onMediaEncrypted=this.onWaitingForKey=null}registerListeners(){this.hls.on(X.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(X.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.on(X.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(X.MANIFEST_LOADED,this.onManifestLoaded,this)}unregisterListeners(){this.hls.off(X.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(X.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.off(X.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.off(X.MANIFEST_LOADED,this.onManifestLoaded,this)}getLicenseServerUrl(e){var{drmSystems:t,widevineLicenseUrl:r}=this.config,t=t[e];return t?t.licenseUrl:e===Vs.WIDEVINE&&r?r:void 0}getLicenseServerUrlOrThrow(e){var t=this.getLicenseServerUrl(e);if(void 0===t)throw new Error(`no license server URL configured for key-system "${e}"`);return t}getServerCertificateUrl(e){var t=this.config.drmSystems,t=t[e];if(t)return t.serverCertificateUrl;this.log(`No Server Certificate in config.drmSystems["${e}"]`)}attemptKeySystemAccess(e){var t=this.hls.levels,r=(e,t,r)=>!!e&&r.indexOf(e)===t;let n=t.map(e=>e.audioCodec).filter(r),o=t.map(e=>e.videoCodec).filter(r);return n.length+o.length===0&&o.push("avc1.42e01e"),new Promise((i,s)=>{let a=t=>{let r=t.shift();this.getMediaKeysPromise(r,n,o).then(e=>i({keySystem:r,mediaKeys:e})).catch(e=>{t.length?a(t):e instanceof Vf?s(e):s(new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_NO_ACCESS,error:e,fatal:!0},e.message))})};a(e)})}requestMediaKeySystemAccess(e,t){var r=this.config.requestMediaKeySystemAccessFunc;if("function"==typeof r)return r(e,t);{let e="Configured requestMediaKeySystemAccess is not a function "+r;return null===ii&&"http:"===self.location.protocol&&(e="navigator.requestMediaKeySystemAccess is not available over insecure protocol "+location.protocol),Promise.reject(new Error(e))}}getMediaKeysPromise(i,e,t){e=((e,t,r,i)=>{let s;switch(e){case Vs.FAIRPLAY:s=["cenc","sinf"];break;case Vs.WIDEVINE:case Vs.PLAYREADY:s=["cenc"];break;case Vs.CLEARKEY:s=["cenc","keyids"];break;default:throw new Error("Unknown key-system: "+e)}var a=s,n=i;return[a={initDataTypes:a,persistentState:n.persistentState||"optional",distinctiveIdentifier:n.distinctiveIdentifier||"optional",sessionTypes:n.sessionTypes||[n.sessionType||"temporary"],audioCapabilities:t.map(e=>({contentType:"audio/mp4; codecs="+e,robustness:n.audioRobustness||"",encryptionScheme:n.audioEncryptionScheme||null})),videoCapabilities:r.map(e=>({contentType:"video/mp4; codecs="+e,robustness:n.videoRobustness||"",encryptionScheme:n.videoEncryptionScheme||null}))}]})(i,e,t,this.config.drmSystemOptions);let r=this.keySystemAccessPromises[i],s=null==r?void 0:r.keySystemAccess;if(s)return s.then(()=>r.mediaKeys);{this.log(`Requesting encrypted media "${i}" key-system access with config: `+$(e)),s=this.requestMediaKeySystemAccess(i,e);let t=this.keySystemAccessPromises[i]={keySystemAccess:s};return s.catch(e=>{this.log(`Failed to obtain access to key-system "${i}": `+e)}),s.then(e=>{this.log(`Access for key-system "${e.keySystem}" obtained`);let r=this.fetchServerCertificate(i);return this.log(`Create media-keys for "${i}"`),t.mediaKeys=e.createMediaKeys().then(t=>(this.log(`Media-keys created for "${i}"`),r.then(e=>e?this.setMediaKeysServerCertificate(t,i,e):t))),t.mediaKeys.catch(e=>{this.error(`Failed to create media-keys for "${i}"}: `+e)}),t.mediaKeys})}}createMediaKeySessionContext({decryptdata:e,keySystem:t,mediaKeys:r}){this.log(`Creating key-system session "${t}" keyId: `+b.hexDump(e.keyId||[]));var i=r.createSession(),e={decryptdata:e,keySystem:t,mediaKeys:r,mediaKeysSession:i,keyStatus:"status-pending"};return this.mediaKeySessions.push(e),e}renewKeySession(e){var t,r,i=e.decryptdata;i.pssh?(t=this.createMediaKeySessionContext(e),r=this.getKeyIdString(i),this.keyIdToKeySessionPromise[r]=this.generateRequestWithPreferredKeySession(t,"cenc",i.pssh.buffer,"expired")):this.warn("Could not renew expired session. Missing pssh initData."),this.removeSession(e)}getKeyIdString(e){if(!e)throw new Error("Could not read keyId of undefined decryptdata");if(null===e.keyId)throw new Error("keyId is null");return b.hexDump(e.keyId)}updateKeySession(e,t){var r=e.mediaKeysSession;return this.log(`Updating key-session "${r.sessionId}" for keyID ${b.hexDump((null==(e=e.decryptdata)?void 0:e.keyId)||[])} } (data length: ${t&&t.byteLength})`),r.update(t)}selectKeySystemFormat(e){var t=Object.keys(e.levelkeys||{});return this.keyFormatPromise||(this.log(`Selecting key-system from fragment (sn: ${e.sn} ${e.type}: ${e.level}) key formats `+t.join(", ")),this.keyFormatPromise=this.getKeyFormatPromise(t)),this.keyFormatPromise}getKeyFormatPromise(s){return new Promise((r,i)=>{let t=Kl(this.config);var e=s.map(Bl).filter(e=>!!e&&-1!==t.indexOf(e));return this.getKeySystemSelectionPromise(e).then(({keySystem:e})=>{var t=zl(e);t?r(t):i(new Error(`Unable to find format for key-system "${e}"`))}).catch(i)})}loadKey(r){let i=r.keyInfo.decryptdata;var e=this.getKeyIdString(i);let s=`(keyId: ${e} format: "${i.keyFormat}" method: ${i.method} uri: ${i.uri})`,t=(this.log("Starting session for key "+s),this.keyIdToKeySessionPromise[e]);return t||(t=this.getKeySystemForKeyPromise(i).then(({keySystem:e,mediaKeys:t})=>(this.throwIfDestroyed(),this.log(`Handle encrypted media sn: ${r.frag.sn} ${r.frag.type}: ${r.frag.level} using key `+s),this.attemptSetMediaKeys(e,t).then(()=>(this.throwIfDestroyed(),this.createMediaKeySessionContext({keySystem:e,mediaKeys:t,decryptdata:i}))))),(this.keyIdToKeySessionPromise[e]=t.then(e=>{var t=i.pssh?i.pssh.buffer:null;return this.generateRequestWithPreferredKeySession(e,"cenc",t,"playlist-key")})).catch(e=>this.handleError(e))),t}throwIfDestroyed(e=0){if(!this.hls)throw new Error("invalid state")}handleError(e){this.hls&&(this.error(e.message),e instanceof Vf?this.hls.trigger(X.ERROR,e.data):this.hls.trigger(X.ERROR,{type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_NO_KEYS,error:e,fatal:!0}))}getKeySystemForKeyPromise(e){var t=this.getKeyIdString(e),t=this.keyIdToKeySessionPromise[t];return t||(e=(t=Bl(e.keyFormat))?[t]:Kl(this.config),this.attemptKeySystemAccess(e))}getKeySystemSelectionPromise(e){if(0===(e=e.length?e:Kl(this.config)).length)throw new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_NO_CONFIGURED_LICENSE,fatal:!0},"Missing key-system license configuration options "+$({drmSystems:this.config.drmSystems}));return this.attemptKeySystemAccess(e)}attemptSetMediaKeys(e,t){let r=this.setMediaKeysQueue.slice(),i=(this.log(`Setting media-keys for "${e}"`),Promise.all(r).then(()=>{if(this.media)return this.media.setMediaKeys(t);throw new Error("Attempted to set mediaKeys without media element attached")}));return this.setMediaKeysQueue.push(i),i.then(()=>{this.log(`Media-keys set for "${e}"`),r.push(i),this.setMediaKeysQueue=this.setMediaKeysQueue.filter(e=>-1===r.indexOf(e))})}generateRequestWithPreferredKeySession(i,e,t,r){var s=null==(s=this.config.drmSystems)||null==(s=s[i.keySystem])?void 0:s.generateRequest;if(s)try{var a=s.call(this.hls,e,t,i);if(!a)throw new Error("Invalid response from configured generateRequest filter");e=a.initDataType,t=a.initData||null,i.decryptdata.pssh=t?new Uint8Array(t):null}catch(e){if(this.warn(e.message),null!=(s=this.hls)&&s.config.debug)throw e}if(null===t)return this.log(`Skipping key-session request for "${r}" (no initData)`),Promise.resolve(i);let n=this.getKeyIdString(i.decryptdata),o=(this.log(`Generating key-session request for "${r}": ${n} (init data type: ${e} length: ${t?t.byteLength:null})`),new Lh);a=i._onmessage=e=>{var t,r=i.mediaKeysSession;r?({messageType:e,message:t}=e,this.log(`"${e}" message event for session "${r.sessionId}" message size: `+t.byteLength),"license-request"===e||"license-renewal"===e?this.renewLicense(i,t).catch(e=>{o.eventNames().length?o.emit("error",e):this.handleError(e)}):"license-release"===e?i.keySystem===Vs.FAIRPLAY&&(this.updateKeySession(i,Dl("acknowledged")),this.removeSession(i)):this.warn(`unhandled media key message type "${e}"`)):o.emit("error",new Error("invalid state"))},s=i._onkeystatuseschange=e=>{var t;i.mediaKeysSession?(this.onKeyStatusChange(i),t=i.keyStatus,o.emit("keyStatus",t),"expired"===t&&(this.warn(i.keySystem+" expired for key "+n),this.renewKeySession(i))):o.emit("error",new Error("invalid state"))};i.mediaKeysSession.addEventListener("message",a),i.mediaKeysSession.addEventListener("keystatuseschange",s);let l=new Promise((t,r)=>{o.on("error",r),o.on("keyStatus",e=>{e.startsWith("usable")?t():"output-restricted"===e?r(new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED,fatal:!1},"HDCP level output restricted")):"internal-error"===e?r(new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_STATUS_INTERNAL_ERROR,fatal:!0},`key status changed to "${e}"`)):"expired"===e?r(new Error("key expired while generating request")):this.warn(`unhandled key status change "${e}"`)})});return i.mediaKeysSession.generateRequest(e,t).then(()=>{var e;this.log(`Request generated for key-session "${null==(e=i.mediaKeysSession)?void 0:e.sessionId}" keyId: `+n)}).catch(e=>{throw new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_NO_SESSION,error:e,fatal:!1},"Error generating key-session request: "+e)}).then(()=>l).catch(e=>{throw o.removeAllListeners(),this.removeSession(i),e}).then(()=>(o.removeAllListeners(),i))}onKeyStatusChange(i){i.mediaKeysSession.keyStatuses.forEach((e,t)=>{var r;"string"==typeof t&&"object"==typeof e&&(r=t,t=e,e=r),this.log(`key status change "${e}" for keyStatuses keyId: ${b.hexDump("buffer"in t?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):new Uint8Array(t))} session keyId: ${b.hexDump(new Uint8Array(i.decryptdata.keyId||[]))} uri: `+i.decryptdata.uri),i.keyStatus=e})}fetchServerCertificate(o){let r=this.config;let i=new r.loader(r),l=this.getServerCertificateUrl(o);return l?(this.log(`Fetching server certificate for "${o}"`),new Promise((s,a)=>{let n={responseType:"arraybuffer",url:l};var e=r.certLoadPolicy.default,e={loadPolicy:e,timeout:e.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},t={onSuccess:(e,t,r,i)=>{s(e.data)},onError:(e,t,r,i)=>{a(new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:r,response:Fs({url:n.url,data:void 0},e)},`"${o}" certificate request failed (${l}). Status: ${e.code} (${e.text})`))},onTimeout:(e,t,r)=>{a(new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:r,response:{url:n.url,data:void 0}},`"${o}" certificate request timed out (${l})`))},onAbort:(e,t,r)=>{a(new Error("aborted"))}};i.load(n,e,t)})):Promise.resolve()}setMediaKeysServerCertificate(i,s,a){return new Promise((t,r)=>{i.setServerCertificate(a).then(e=>{this.log(`setServerCertificate ${e?"success":"not supported by CDM"} (${null==a?void 0:a.byteLength}) on "${s}"`),t(i)}).catch(e=>{r(new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED,error:e,fatal:!0},e.message))})})}renewLicense(t,e){return this.requestLicense(t,new Uint8Array(e)).then(e=>this.updateKeySession(t,new Uint8Array(e)).catch(e=>{throw new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_SESSION_UPDATE_FAILED,error:e,fatal:!0},e.message)}))}unpackPlayReadyKeyMessage(r,e){var t=String.fromCharCode.apply(null,new Uint16Array(e.buffer));if(!t.includes("PlayReadyKeyMessage"))return r.setRequestHeader("Content-Type","text/xml; charset=utf-8"),e;var e=(new DOMParser).parseFromString(t,"application/xml"),i=e.querySelectorAll("HttpHeader");if(0 in key message")}setupLicenseXHR(t,r,i,s){let a=this.config.licenseXhrSetup;return a?Promise.resolve().then(()=>{if(i.decryptdata)return a.call(this.hls,t,r,i,s);throw new Error("Key removed")}).catch(e=>{if(i.decryptdata)return t.open("POST",r,!0),a.call(this.hls,t,r,i,s);throw e}).then(e=>(t.readyState||t.open("POST",r,!0),{xhr:t,licenseChallenge:e||s})):(t.open("POST",r,!0),Promise.resolve({xhr:t,licenseChallenge:s}))}requestLicense(a,n){let o=this.config.keyLoadPolicy.default;return new Promise((r,e)=>{let i=this.getLicenseServerUrlOrThrow(a.keySystem),s=(this.log("Sending license request to URL: "+i),new XMLHttpRequest);s.responseType="arraybuffer",s.onreadystatechange=()=>{if(!this.hls||!a.mediaKeysSession)return e(new Error("invalid state"));if(4===s.readyState)if(200===s.status){this._requestLicenseFailureCount=0;let e=s.response;this.log("License received "+(e instanceof ArrayBuffer?e.byteLength:e));var t=this.config.licenseResponseCallback;if(t)try{e=t.call(this.hls,s,i,a)}catch(e){this.error(e)}r(e)}else{var t=o.errorRetry,t=t?t.maxNumRetry:0;this._requestLicenseFailureCount++,this._requestLicenseFailureCount>t||400<=s.status&&s.status<500?e(new Vf({type:W.KEY_SYSTEM_ERROR,details:q.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0,networkDetails:s,response:{url:i,data:void 0,code:s.status,text:s.statusText}},`License Request XHR failed (${i}). Status: ${s.status} (${s.statusText})`)):(t=t-this._requestLicenseFailureCount+1,this.warn(`Retrying license request, ${t} attempts left`),this.requestLicense(a,n).then(r,e))}},a.licenseXhr&&a.licenseXhr.readyState!==XMLHttpRequest.DONE&&a.licenseXhr.abort(),a.licenseXhr=s,this.setupLicenseXHR(s,i,a,n).then(({xhr:e,licenseChallenge:t})=>{a.keySystem==Vs.PLAYREADY&&(t=this.unpackPlayReadyKeyMessage(e,t)),e.send(t)})})}onMediaAttached(e,t){this.config.emeEnabled&&(t=t.media,(this.media=t).removeEventListener("encrypted",this.onMediaEncrypted),t.removeEventListener("waitingforkey",this.onWaitingForKey),t.addEventListener("encrypted",this.onMediaEncrypted),t.addEventListener("waitingforkey",this.onWaitingForKey))}onMediaDetached(){var e=this.media;e&&(e.removeEventListener("encrypted",this.onMediaEncrypted),e.removeEventListener("waitingforkey",this.onWaitingForKey),this.media=null)}_clear(e){let t,r=this.mediaKeySessions,i=(this._requestLicenseFailureCount=0,this.setMediaKeysQueue=[],this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},lf.clearKeyUriToKeyIdMap(),r.length);$f.CDMCleanupPromise=Promise.all(r.map(e=>this.removeSession(e)).concat(null==e||null==(t=e.setMediaKeys(null))?void 0:t.catch(e=>{var t;this.log("Could not clear media keys: "+e),null!=(t=this.hls)&&t.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.KEY_SYSTEM_DESTROY_MEDIA_KEYS_ERROR,fatal:!1,error:new Error("Could not clear media keys: "+e)})}))).then(()=>{i&&(this.log("finished closing key sessions and clearing media keys"),r.length=0)}).catch(e=>{var t;this.log("Could not close sessions and clear media keys: "+e),null!=(t=this.hls)&&t.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR,fatal:!1,error:new Error("Could not close sessions and clear media keys: "+e)})})}onManifestLoading(){this.keyFormatPromise=null}onManifestLoaded(e,{sessionKeys:t}){t&&this.config.emeEnabled&&(this.keyFormatPromise||(t=t.reduce((e,t)=>(-1===e.indexOf(t.keyFormat)&&e.push(t.keyFormat),e),[]),this.log("Selecting key-system from session-keys "+t.join(", ")),this.keyFormatPromise=this.getKeyFormatPromise(t)))}removeSession(e){let{mediaKeysSession:r,licenseXhr:t}=e;if(r)return this.log("Remove licenses and keys and close session "+r.sessionId),e._onmessage&&(r.removeEventListener("message",e._onmessage),e._onmessage=void 0),e._onkeystatuseschange&&(r.removeEventListener("keystatuseschange",e._onkeystatuseschange),e._onkeystatuseschange=void 0),t&&t.readyState!==XMLHttpRequest.DONE&&t.abort(),e.mediaKeysSession=e.decryptdata=e.licenseXhr=void 0,e=(-1<(e=this.mediaKeySessions.indexOf(e))&&this.mediaKeySessions.splice(e,1),this.config).drmSystemOptions,("persistent-license"===(e=e).sessionType||null!=(e=e.sessionTypes)&&e.some(e=>"persistent-license"===e)?new Promise((e,t)=>{self.setTimeout(()=>t(new Error("MediaKeySession.remove() timeout")),8e3),r.remove().then(e)}):Promise.resolve()).catch(e=>{var t;this.log("Could not remove session: "+e),null!=(t=this.hls)&&t.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.KEY_SYSTEM_DESTROY_REMOVE_SESSION_ERROR,fatal:!1,error:new Error("Could not remove session: "+e)})}).then(()=>r.close()).catch(e=>{var t;this.log("Could not close session: "+e),null!=(t=this.hls)&&t.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR,fatal:!1,error:new Error("Could not close session: "+e)})})}}$f.CDMCleanupPromise=void 0;class Vf extends Error{constructor(e,t){super(t),this.data=void 0,e.error||(e.error=new Error(t)),(this.data=e).err=e.error}}function Dd(e,t){let r;try{r=new Event("addtrack")}catch(e){(r=document.createEvent("Event")).initEvent("addtrack",!1,!1)}r.track=e,t.dispatchEvent(r)}function xd(t,r){var e=t.mode;if("disabled"===e&&(t.mode="hidden"),t.cues&&!t.cues.getCueById(r.id))try{if(t.addCue(r),!t.cues.getCueById(r.id))throw new Error("addCue is failed for: "+r)}catch(e){j.debug("[texttrack-utils]: "+e);try{var i=new self.TextTrackCue(r.startTime,r.endTime,r.text);i.id=r.id,t.addCue(i)}catch(e){j.debug("[texttrack-utils]: Legacy TextTrackCue fallback failed: "+e)}}"disabled"===e&&(t.mode=e)}function Od(t,r){var e=t.mode;if("disabled"===e&&(t.mode="hidden"),t.cues)for(let e=t.cues.length;e--;)r&&t.cues[e].removeEventListener("enter",r),t.removeCue(t.cues[e]);"disabled"===e&&(t.mode=e)}function Md(t,e,r,i){var s=t.mode;if("disabled"===s&&(t.mode="hidden"),t.cues&&0{var a=[],n=((e,t)=>{if(t<=e[0].startTime)return 0;var r=e.length-1;if(t>e[r].endTime)return-1;let i=0,s=r,a;for(;i<=s;)if(a=Math.floor((s+i)/2),te[a].startTime&&i=i&&o.endTime<=s)a.push(o);else if(o.startTime>s)return a}return a})(t.cues,e,r);for(let e=0;ethis.pollTrackChange(0),this.onTextTracksChanged=()=>{if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),this.media&&this.hls.config.renderTextTracksNatively){let t=null;var r=Fd(this.media.textTracks);for(let e=0;e{Od(e)}))}onManifestLoading(){this.tracks=[],this.groupIds=null,this.tracksInGroup=[],this.trackId=-1,this.currentTrack=null,this.selectDefaultTrack=!0}onManifestParsed(e,t){this.tracks=t.subtitleTracks}onSubtitleTrackLoaded(e,t){var r,{id:i,groupId:s,details:a}=t,n=this.tracksInGroup[i];n&&n.groupId===s?(r=n.details,n.details=t.details,this.log(`Subtitle track ${i} "${n.name}" lang:${n.lang} group:${s} loaded [${a.startSN}-${a.endSN}]`),i===this.trackId&&this.playlistLoaded(i,t,r)):this.warn(`Subtitle track with id:${i} and group:${s} not found in active group `+(null==n?void 0:n.groupId))}onLevelLoading(e,t){this.switchLevel(t.level)}onLevelSwitching(e,t){this.switchLevel(t.level)}switchLevel(s){s=this.hls.levels[s];if(s){let t=s.subtitleGroups||null,r=this.groupIds,i=this.currentTrack;if(!t||(null==r?void 0:r.length)!==(null==t?void 0:t.length)||null!=t&&t.some(e=>-1===(null==r?void 0:r.indexOf(e)))){this.groupIds=t,this.trackId=-1,this.currentTrack=null;s=this.tracks.filter(e=>!t||-1!==t.indexOf(e.groupId));if(s.length)this.selectDefaultTrack&&!s.some(e=>e.default)&&(this.selectDefaultTrack=!1),s.forEach((e,t)=>{e.id=t});else if(!i&&!this.tracksInGroup.length)return;this.tracksInGroup=s;var a,n=this.hls.config.subtitlePreference;!i&&n&&(this.selectDefaultTrack=!1,a=Ko(n,s),i=-1ud(t,e))[0])||this.warn(`Unable to find subtitle TextTrack with name "${t.name}" and language "${t.lang}"`),[].slice.call(e).forEach(e=>{"disabled"!==e.mode&&e!==r&&(e.mode="disabled")}),r&&(e=this.subtitleDisplay?"showing":"hidden",r.mode!==e)&&(r.mode=e)}}setSubtitleTrack(e){var t,r,i,s,a,n,o=this.tracksInGroup;this.media?e<-1||e>=o.length||!H(e)?this.warn("Invalid subtitle track id: "+e):(this.selectDefaultTrack=!1,t=this.currentTrack,o=o[e]||null,this.trackId=e,this.currentTrack=o,this.toggleTrackModes(),o?(n=!!o.details&&!o.details.live,e===this.trackId&&o===t&&n||(this.log("Switching to subtitle-track "+e+(o?` "${o.name}" lang:${o.lang} group:`+o.groupId:"")),{id:n,groupId:r="",name:i,type:s,url:a}=o,this.hls.trigger(X.SUBTITLE_TRACK_SWITCH,{id:n,groupId:r,name:i,type:s,url:a}),n=this.switchParams(o.url,null==t?void 0:t.details,o.details),this.loadPlaylist(n))):this.hls.trigger(X.SUBTITLE_TRACK_SWITCH,{id:e})):this.queuedDefaultTrack=e}}function Nd(e){let t=5381,r=e.length;for(;r;)t=33*t^e.charCodeAt(--r);return(t>>>0).toString()}let Wi=(e=>(e[e.Point=0]="Point",e[e.Range=1]="Range",e))({});class Hf{constructor(e,t){this.base=void 0,this._duration=null,this._timelineStart=null,this.appendInPlaceDisabled=void 0,this.appendInPlaceStarted=void 0,this.dateRange=void 0,this.hasPlayed=!1,this.cumulativeDuration=0,this.resumeOffset=NaN,this.playoutLimit=NaN,this.restrictions={skip:!1,jump:!1},this.snapOptions={out:!1,in:!1},this.assetList=[],this.assetListLoader=void 0,this.assetListResponse=null,this.resumeAnchor=void 0,this.error=void 0,this.resetOnResume=void 0,this.base=t,this.dateRange=e,this.setDateRange(e)}setDateRange(e){this.dateRange=e,this.resumeOffset=e.attr.optionalFloat("X-RESUME-OFFSET",this.resumeOffset),this.playoutLimit=e.attr.optionalFloat("X-PLAYOUT-LIMIT",this.playoutLimit),this.restrictions=e.attr.enumeratedStringList("X-RESTRICT",this.restrictions),this.snapOptions=e.attr.enumeratedStringList("X-SNAP",this.snapOptions)}reset(){var e;this.appendInPlaceStarted=!1,null!=(e=this.assetListLoader)&&e.destroy(),this.assetListLoader=void 0,this.supplementsPrimary||(this.assetListResponse=null,this.assetList=[],this._duration=null)}isAssetPastPlayoutLimit(e){var t;return e>=this.assetList.length||(t=this.playoutLimit,!(e<=0||isNaN(t))&&t":e.cue.post?"":""}${e.timelineStart.toFixed(2)}-${e.resumeTime.toFixed(2)}]`;var e}}function Ud(e,t){return e-t.start{var e=this.interstitial.playoutLimit,t=this.currentTime;this.startOffset+t>=e&&this.hls.trigger(X.PLAYOUT_LIMIT_REACHED,{})};e=this.hls=new e(t);this.interstitial=r;let s=(this.assetItem=i).uri;try{s=Bd(s,e.sessionId).href}catch(e){}e.loadSource(s);t=()=>{this.hasDetails=!0};e.once(X.LEVEL_LOADED,t),e.once(X.AUDIO_TRACK_LOADED,t),e.once(X.SUBTITLE_TRACK_LOADED,t),e.on(X.MEDIA_ATTACHING,(e,{media:t})=>{this.removeMediaListeners(),this.mediaAttached=t,this.interstitial.playoutLimit&&t.addEventListener("timeupdate",this.checkPlayout)})}bufferedInPlaceToEnd(e){var t;return!!this.interstitial.appendInPlace&&(!(null==(t=this.hls)||!t.bufferedToEnd)||!(!e||!this._bufferedEosTime)&&(t=this.timelineOffset,e=qs.bufferInfo(e,t,0),this.getAssetTime(e.end)>=this._bufferedEosTime-.02))}get destroyed(){var e;return!(null!=(e=this.hls)&&e.userConfig)}get assetId(){return this.assetItem.identifier}get interstitialId(){return this.assetItem.parentIdentifier}get media(){var e;return(null==(e=this.hls)?void 0:e.media)||null}get bufferedEnd(){var e=this.media||this.mediaAttached;return e?(e=qs.bufferInfo(e,e.currentTime,.001),this.getAssetTime(e.end)):this._bufferedEosTime||this.currentTime}get currentTime(){var e=this.media||this.mediaAttached;return e?this.getAssetTime(e.currentTime):this._currentTime||0}get duration(){var e=this.assetItem.duration;return e||0}get remaining(){var e=this.duration;return e?Math.max(0,e-this.currentTime):0}get startOffset(){return this.assetItem.startOffset}get timelineOffset(){var e;return(null==(e=this.hls)?void 0:e.config.timelineOffset)||0}set timelineOffset(e){var t=this.timelineOffset;if(e!==t&&Math.abs(e-t)>1/9e4){if(this.hasDetails)throw new Error("Cannot set timelineOffset after playlists are loaded");this.hls.config.timelineOffset=e}}getAssetTime(e){var t=this.timelineOffset,r=this.duration;return Math.min(Math.max(0,e-t),r)}removeMediaListeners(){var e=this.mediaAttached;e&&(this._currentTime=e.currentTime,this.bufferSnapShot(),e.removeEventListener("timeupdate",this.checkPlayout))}bufferSnapShot(){var e;this.mediaAttached&&null!=(e=this.hls)&&e.bufferedToEnd&&(this._bufferedEosTime=this.bufferedEnd)}destroy(){this.removeMediaListeners(),this.hls.destroy(),this.hls=this.interstitial=null,this.tracks=this.mediaAttached=this.checkPlayout=null}attachMedia(e){this.hls.attachMedia(e)}detachMedia(){this.removeMediaListeners(),this.mediaAttached=null,this.hls.detachMedia()}resumeBuffering(){this.hls.resumeBuffering()}pauseBuffering(){this.hls.pauseBuffering()}transferMedia(){return this.bufferSnapShot(),this.hls.transferMedia()}on(e,t,r){this.hls.on(e,t)}once(e,t,r){this.hls.once(e,t)}off(e,t,r){this.hls.off(e,t)}toString(){var e;return`HlsAssetPlayer: ${$d(this.assetItem)} ${null==(e=this.hls)?void 0:e.sessionId} `+(null!=(e=this.interstitial)&&e.appendInPlace?"append-in-place":"")}}class zf extends Vu{constructor(e,t){super("interstitials-sched",t),this.onScheduleUpdate=void 0,this.eventMap={},this.events=null,this.items=null,this.durations={primary:0,playout:0,integrated:0},this.onScheduleUpdate=e}destroy(){this.reset(),this.onScheduleUpdate=null}reset(){this.eventMap={},this.setDurations(0,0,0),this.events&&this.events.forEach(e=>e.reset()),this.events=this.items=null}resetErrorsInRange(r,i){return this.events?this.events.reduce((e,t)=>r<=t.startOffset&&i>t.startOffset?(delete t.error,e+1):e,0):0}get duration(){var e=this.items;return e?e[e.length-1].end:0}get length(){return this.items?this.items.length:0}getEvent(e){return e&&this.eventMap[e]||null}hasEvent(e){return e in this.eventMap}findItemIndex(e,t){if(e.event)return this.findEventIndex(e.event.identifier);let r=-1;e.nextEvent?r=this.findEventIndex(e.nextEvent.identifier)-1:e.previousEvent&&(r=this.findEventIndex(e.previousEvent.identifier)+1);var i,s=this.items;if(s)for(s[r]||(void 0===t&&(t=e.start),r=this.findItemIndexAtTime(t));0<=r&&null!=(i=s[r])&&i.event;)r--;return r}findItemIndexAtTime(r,i){var s=this.items;if(s)for(let t=0;te.start&&r!a.includes(e.identifier)):[];r.length&&r.sort((e,t)=>{var r=e.cue.pre,i=e.cue.post,s=t.cue.pre,a=t.cue.post;if(r&&!s)return-1;if(s&&!r)return 1;if(i&&!a)return 1;if(a&&!i)return-1;if(!(r||s||i||a)){r=e.startTime,s=t.startTime;if(r!==s)return r-s}return e.dateRange.tagOrder-t.dateRange.tagOrder}),this.events=r,t.forEach(e=>{this.removeEvent(e)}),this.updateSchedule(e,t)}updateSchedule(e,t=[]){var i=this.events||[];if(i.length||t.length||this.length<2){let r=this.items;i=this.parseSchedule(i,e);(t.length||(null==r?void 0:r.length)!==i.length||i.some((e,t)=>.005!(e.error||e.cue.once&&e.hasPlayed))).length){this.resolveOffsets(g,e);let f=0,p=0;g.forEach((e,t)=>{var r=e.cue.pre,i=e.cue.post,s=g[t-1]||null,a=e.appendInPlace,n=i?v:e.startOffset,o=e.duration,l=e.timelineOccupancy===Wi.Range?o:0,h=(null==s?void 0:s.startTime)===n,d=n+e.cumulativeDuration;let c=a?d+o:n+e.resumptionOffset;if(r||!i&&n<=0){a=p,r=(p+=l,e.timelineStart=d,y);y+=o,m.push({event:e,start:d,end:c,playout:{start:r,end:y},integrated:{start:a,end:p}})}else{if(!(n<=v))return;h||(.033<(r=n-f)?(a=f,h=p,p+=r,u=y,y+=r,t={previousEvent:g[t-1]||null,nextEvent:e,start:a,end:a+r,playout:{start:u,end:y},integrated:{start:h,end:p}},m.push(t)):0v?v:h}),f{var r=e.cue.pre,i=e.cue.post,r=r?0:i?l:e.startTime,s=(this.updateAssetDurations(e),d===r),s=(s?e.cumulativeDuration=h:(h=0,d=r),!i&&e.snapOptions.in&&(e.resumeAnchor=Zo(null,o.fragments,e.startOffset+e.resumptionOffset,0,0)||void 0),!e.appendInPlace||e.appendInPlaceStarted||this.primaryCanResumeInPlaceAt(e,n)||(e.appendInPlace=!1),!e.appendInPlace&&t+1{var t,r=a[e].details,i=r.edge;return n>=i?(this.log(`"${s.identifier}" resumption ${n} past ${e} playlist end `+i),!1):(i=Zo(null,r.fragments,n))?(t="audio"===e?.175:0,!(Math.abs(i.start-n)<.025+t||Math.abs(i.end-n)<.025+t||(this.log(`"${s.identifier}" resumption ${n} not aligned with ${e} fragment bounds (${i.start}-${i.end} sn: ${i.sn} cc: ${i.cc})`),0))):(this.log(`"${s.identifier}" resumption ${n} does not align with any fragments in ${e} playlist (${r.fragStart}-${r.fragmentEnd})`),!0)}):(this.log(`"${s.identifier}" resumption ${n} can not be aligned with media (none selected)`),!1)}updateAssetDurations(e){if(e.assetListLoaded){let i=e.timelineStart,s=0,a=!1,n=!1;e.assetList.forEach((e,t)=>{var r=i+s,r=(e.startOffset=s,e.timelineStart=r,a=a||null===e.duration,n=n||!!e.error,!e.error&&e.duration||0);s+=r}),a&&!n?e.duration=Math.max(s,e.duration):e.duration=s}}removeEvent(e){e.reset(),delete this.eventMap[e.identifier]}}function Vd(e){return`[${e.event?'"'+e.event.identifier+'"':"primary"}: ${e.start.toFixed(2)}-${e.end.toFixed(2)}]`}class Kf{constructor(e){this.hls=void 0,this.hls=e}destroy(){this.hls=null}loadAssetList(a,e){var t=a.assetListUrl;let r;try{r=Bd(t,this.hls.sessionId,a.baseUrl)}catch(e){t=this.assignAssetListError(a,q.ASSET_LIST_LOAD_ERROR,e,t);return void this.hls.trigger(X.ERROR,t)}e&&"data:"!==r.protocol&&r.searchParams.set("_HLS_start_offset",""+e);var t=this.hls.config,e=new t.loader(t),i={responseType:"json",url:r.href},t=t.interstitialAssetListLoadPolicy.default,t={loadPolicy:t,timeout:t.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0};return e.load(i,t,{onSuccess:(e,t,r,i)=>{var e=e.data,s=null==e?void 0:e.ASSETS;Array.isArray(s)?(a.assetListResponse=e,this.hls.trigger(X.ASSET_LIST_LOADED,{event:a,assetListResponse:e,networkDetails:i})):(s=this.assignAssetListError(a,q.ASSET_LIST_PARSING_ERROR,new Error("Invalid interstitial asset list"),r.url,t,i),this.hls.trigger(X.ERROR,s))},onError:(e,t,r,i)=>{e=this.assignAssetListError(a,q.ASSET_LIST_LOAD_ERROR,new Error(`Error loading X-ASSET-LIST: HTTP status ${e.code} ${e.text} (${t.url})`),t.url,i,r);this.hls.trigger(X.ERROR,e)},onTimeout:(e,t,r)=>{t=this.assignAssetListError(a,q.ASSET_LIST_LOAD_TIMEOUT,new Error(`Timeout loading X-ASSET-LIST (${t.url})`),t.url,e,r);this.hls.trigger(X.ERROR,t)}}),this.hls.trigger(X.ASSET_LIST_LOADING,{event:a}),e}assignAssetListError(e,t,r,i,s,a){return e.error=r,{type:W.NETWORK_ERROR,details:t,fatal:!1,interstitial:e,url:i,error:r,networkDetails:a,stats:s}}}function Gd(e,t,r){Hd(e,t,r),e.addEventListener(t,r)}function Hd(e,t,r){e.removeEventListener(t,r)}function jd(e){null!=e&&e.play().catch(()=>{})}class Yf extends Vu{constructor(e,t){super("interstitials",e.logger),this.HlsPlayerClass=void 0,this.hls=void 0,this.assetListLoader=void 0,this.mediaSelection=null,this.altSelection=null,this.media=null,this.detachedData=null,this.requiredTracks=null,this.manager=null,this.playerQueue=[],this.bufferedPos=-1,this.timelinePos=-1,this.schedule=void 0,this.playingItem=null,this.bufferingItem=null,this.waitingItem=null,this.endedItem=null,this.playingAsset=null,this.endedAsset=null,this.bufferingAsset=null,this.shouldPlay=!1,this.onPlay=()=>{this.shouldPlay=!0},this.onPause=()=>{this.shouldPlay=!1},this.onSeeking=()=>{var e=this.currentTime;if(void 0!==e&&!this.playbackDisabled){var t=e-this.timelinePos,r=Math.abs(t)<1/7056e5;if(!r){var r=t<=-.01,i=(this.timelinePos=e,this.bufferedPos=e,this.playingItem);if(i)if(r&&this.schedule.resetErrorsInRange(e,e-t)&&this.updateSchedule(),this.checkBuffer(),r&&e=i.end){t=this.schedule.findItemIndexAtTime(this.timelinePos);if(!this.isInterstitial(i)&&null!=(s=this.media)&&s.paused&&(this.shouldPlay=!1),!r){var s=this.findItemIndex(i);if(s{var e,t=this.currentTime;void 0===t||this.playbackDisabled||t>this.timelinePos&&((this.timelinePos=t)>this.bufferedPos&&this.checkBuffer(),e=this.playingItem)&&!this.playingLastItem&&(t>=e.end&&(this.timelinePos=e.end,e=this.findItemIndex(e),this.setSchedulePosition(e+1)),e=this.playingAsset)&&e.timelineStart+(e.duration||0)<=t&&this.setScheduleToAssetAtTime(t,e)},this.onScheduleUpdate=(e,t)=>{var r,i=this.schedule,s=this.playingItem,a=i.events||[],n=i.items||[],i=i.durations,o=e.map(e=>e.identifier),l=!(!a.length&&!o.length),h=(l&&this.log(`INTERSTITIALS_UPDATED (${a.length}): ${a} Schedule: `+n.map(e=>Vd(e))),o.length&&this.log("Removed events "+o),this.playerQueue.forEach(t=>{if(t.interstitial.appendInPlace){var r=t.assetItem.timelineStart,i=t.timelineOffset-r;if(i)try{t.timelineOffset=r}catch(e){.025${r})`)}}}),s?(h=this.updateItem(s,this.timelinePos),this.itemsMatch(s,h)&&(this.playingItem=h,this.waitingItem=this.endedItem=null)):(this.waitingItem=this.updateItem(this.waitingItem),this.endedItem=this.updateItem(this.endedItem)),this.bufferingItem);h&&(r=this.updateItem(h,this.bufferedPos),this.itemsMatch(h,r)?this.bufferingItem=r:h.event&&(this.bufferingItem=this.playingItem,this.clearInterstitial(h.event,null))),e.forEach(e=>{e.assetList.forEach(e=>{this.clearAssetPlayer(e.identifier,null)})}),(l||t)&&(this.hls.trigger(X.INTERSTITIALS_UPDATED,{events:a.slice(0),schedule:n.slice(0),durations:i,removedIds:o}),this.isInterstitial(s)&&o.includes(s.event.identifier)?(this.warn(`Interstitial "${s.event.identifier}" removed while playing`),this.primaryFallback(s.event)):this.checkBuffer())},this.hls=e,this.HlsPlayerClass=t,this.assetListLoader=new Kf(e),this.schedule=new zf(this.onScheduleUpdate,e.logger),this.registerListeners()}registerListeners(){var e=this.hls;e.on(X.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(X.MANIFEST_LOADING,this.onManifestLoading,this),e.on(X.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(X.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.on(X.AUDIO_TRACK_UPDATED,this.onAudioTrackUpdated,this),e.on(X.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),e.on(X.SUBTITLE_TRACK_UPDATED,this.onSubtitleTrackUpdated,this),e.on(X.EVENT_CUE_ENTER,this.onInterstitialCueEnter,this),e.on(X.ASSET_LIST_LOADED,this.onAssetListLoaded,this),e.on(X.BUFFER_APPENDED,this.onBufferAppended,this),e.on(X.BUFFER_FLUSHED,this.onBufferFlushed,this),e.on(X.BUFFERED_TO_END,this.onBufferedToEnd,this),e.on(X.MEDIA_ENDED,this.onMediaEnded,this),e.on(X.ERROR,this.onError,this),e.on(X.DESTROYING,this.onDestroying,this)}unregisterListeners(){var e=this.hls;e&&(e.off(X.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(X.MANIFEST_LOADING,this.onManifestLoading,this),e.off(X.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(X.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.off(X.AUDIO_TRACK_UPDATED,this.onAudioTrackUpdated,this),e.off(X.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),e.off(X.SUBTITLE_TRACK_UPDATED,this.onSubtitleTrackUpdated,this),e.off(X.EVENT_CUE_ENTER,this.onInterstitialCueEnter,this),e.off(X.ASSET_LIST_LOADED,this.onAssetListLoaded,this),e.off(X.BUFFER_CODECS,this.onBufferCodecs,this),e.off(X.BUFFER_APPENDED,this.onBufferAppended,this),e.off(X.BUFFER_FLUSHED,this.onBufferFlushed,this),e.off(X.BUFFERED_TO_END,this.onBufferedToEnd,this),e.off(X.MEDIA_ENDED,this.onMediaEnded,this),e.off(X.ERROR,this.onError,this),e.off(X.DESTROYING,this.onDestroying,this))}startLoad(){this.resumeBuffering()}stopLoad(){this.pauseBuffering()}resumeBuffering(){var e;null!=(e=this.getBufferingPlayer())&&e.resumeBuffering()}pauseBuffering(){var e;null!=(e=this.getBufferingPlayer())&&e.pauseBuffering()}destroy(){this.unregisterListeners(),this.stopLoad(),this.assetListLoader&&this.assetListLoader.destroy(),this.emptyPlayerQueue(),this.clearScheduleState(),this.schedule&&this.schedule.destroy(),this.media=this.detachedData=this.mediaSelection=this.requiredTracks=this.altSelection=this.manager=null,this.hls=this.HlsPlayerClass=this.schedule=this.log=null,this.assetListLoader=null,this.onPlay=this.onPause=this.onSeeking=this.onTimeupdate=null,this.onScheduleUpdate=null}onDestroying(){var e=this.primaryMedia||this.media;e&&this.removeMediaListeners(e)}removeMediaListeners(e){Hd(e,"play",this.onPlay),Hd(e,"pause",this.onPause),Hd(e,"seeking",this.onSeeking),Hd(e,"timeupdate",this.onTimeupdate)}onMediaAttaching(e,t){t=this.media=t.media;Gd(t,"seeking",this.onSeeking),Gd(t,"timeupdate",this.onTimeupdate),Gd(t,"play",this.onPlay),Gd(t,"pause",this.onPause)}onMediaAttached(e,t){var r=this.effectivePlayingItem,i=this.detachedData;(this.detachedData=null)===r?this.checkStart():i||(this.clearScheduleState(),i=this.findItemIndex(r),this.setSchedulePosition(i))}clearScheduleState(){this.playingItem=this.bufferingItem=this.waitingItem=this.endedItem=this.playingAsset=this.endedAsset=this.bufferingAsset=null}onMediaDetaching(e,t){var t=!!t.transferMedia,r=this.media;this.media=null,t||(r&&this.removeMediaListeners(r),this.detachedData&&((t=this.getBufferingPlayer())&&(this.playingAsset=this.endedAsset=this.bufferingAsset=this.bufferingItem=this.waitingItem=this.detachedData=null,t.detachMedia()),this.shouldPlay=!1))}get interstitialsManager(){if(!this.manager){if(!this.hls)return null;let p=this,t=()=>p.bufferingItem||p.waitingItem,g=e=>e&&p.getAssetPlayer(e.identifier),m=(t,r,i,s,a)=>{if(t){let e=t[r].start;var n=t.event;return n?"playout"!==r&&n.timelineOccupancy===Wi.Point||(null==(r=g(i))?void 0:r.interstitial)===n&&(e+=r.assetItem.startOffset+r[a]):(i="bufferedPos"===s?o():p[s],e+=i-t.start),e}return 0},o=()=>{var e=p.bufferedPos;return e===Number.MAX_VALUE?r("primary"):Math.max(e,0)},r=e=>{var t;return null!=(t=p.primaryDetails)&&t.live?p.primaryDetails.edge:p.schedule.durations[e]},i=(r,i)=>{var s=p.effectivePlayingItem;if(null==s||null==(s=s.event)||!s.restrictions.skip){p.log(`seek to ${r} "${i}"`);var s=p.effectivePlayingItem,a=p.schedule.findItemIndexAtTime(r,i),n=null==(n=p.schedule.items)?void 0:n[a],t=p.getBufferingPlayer(),o=null==t?void 0:t.interstitial,o=null==o?void 0:o.appendInPlace,l=s&&p.itemsMatch(s,n);if(s&&(o||l)){var l=g(p.playingAsset),h=(null==l?void 0:l.media)||p.primaryMedia;if(h){var d="primary"===i?h.currentTime:m(s,i,p.playingAsset,"timelinePos","currentTime"),d=(o?d:h.currentTime)+(r-d);if(0<=d&&(!l||o||d<=l.duration))return void(h.currentTime=d)}}if(n){let e=r;"primary"!==i&&(l=n[i].start,e=n.start+(r-l));h=!p.isInterstitial(n);if(p.isInterstitial(s)&&!s.event.appendInPlace||!h&&!n.event.appendInPlace){if(s){d=p.findItemIndex(s);if(d=f.startOffset&&u{var e=p.effectivePlayingItem;return p.isInterstitial(e)||(e=t(),p.isInterstitial(e))?e:null},e={get currentTime(){var e=s(),t=p.effectivePlayingItem;return t&&t===e?m(t,"playout",p.effectivePlayingAsset,"timelinePos","currentTime")-t.playout.start:0},set currentTime(e){var t=s(),r=p.effectivePlayingItem;r&&r===t&&i(e+r.playout.start,"playout")},get duration(){var e=s();return e?e.playout.end-e.playout.start:0},get assetPlayers(){var e=null==(e=s())?void 0:e.event.assetList;return e?e.map(e=>p.getAssetPlayer(e.identifier)):[]},get playingIndex(){var e=null==(e=s())?void 0:e.event;return e&&p.effectivePlayingAsset?e.findAssetIndex(p.effectivePlayingAsset):-1},get scheduleItem(){return s()}};this.manager={get events(){var e;return(null==(e=p.schedule)||null==(e=e.events)?void 0:e.slice(0))||[]},get schedule(){var e;return(null==(e=p.schedule)||null==(e=e.items)?void 0:e.slice(0))||[]},get interstitialPlayer(){return s()?e:null},get playerQueue(){return p.playerQueue.slice(0)},get bufferingAsset(){return p.bufferingAsset},get bufferingItem(){return t()},get bufferingIndex(){var e=t();return p.findItemIndex(e)},get playingAsset(){return p.effectivePlayingAsset},get playingItem(){return p.effectivePlayingItem},get playingIndex(){var e=p.effectivePlayingItem;return p.findItemIndex(e)},primary:{get bufferedEnd(){return o()},get currentTime(){var e=p.timelinePos;return 0{if(0!==e&&"primary"!==t&&p.schedule.length){var r=p.schedule.findItemIndexAtTime(e),i=null==(i=p.schedule.items)?void 0:i[r];if(i)return e+(i[t].start-i.start)}return e})((null==(e=p.primaryDetails)?void 0:e.fragmentStart)||0,"integrated")}},skip:()=>{var e,t=p.effectivePlayingItem,r=null==t?void 0:t.event;r&&!r.restrictions.skip&&(e=p.findItemIndex(t),r.appendInPlace?(t=t.playout.start+t.event.duration,i(t+.001,"playout")):p.advanceAfterAssetEnded(r,e,1/0))}}}return this.manager}get effectivePlayingItem(){return this.waitingItem||this.playingItem||this.endedItem}get effectivePlayingAsset(){return this.playingAsset||this.endedAsset}get playingLastItem(){var e=this.playingItem,t=null==(t=this.schedule)?void 0:t.items;return!!(this.playbackStarted&&e&&t)&&this.findItemIndex(e)===t.length-1}get playbackStarted(){return null!==this.effectivePlayingItem}get currentTime(){if(null!==this.mediaSelection){var t=this.waitingItem||this.playingItem;if(!this.isInterstitial(t)||t.event.appendInPlace){let e=this.media;t=null==(t=e=!e&&null!=(t=this.bufferingItem)&&null!=(t=t.event)&&t.appendInPlace?this.primaryMedia:e)?void 0:t.currentTime;if(void 0!==t&&H(t))return t}}}get primaryMedia(){var e;return this.media||(null==(e=this.detachedData)?void 0:e.media)||null}isInterstitial(e){return!(null==e||!e.event)}retreiveMediaSource(e,t){e=this.getAssetPlayer(e);e&&this.transferMediaFromPlayer(e,t)}transferMediaFromPlayer(e,t){var r=e.interstitial.appendInPlace,i=e.media;r&&i===this.primaryMedia?(this.bufferingAsset=null,(!t||this.isInterstitial(t)&&!t.event.appendInPlace)&&t&&i?this.detachedData={media:i}:(r=e.transferMedia(),this.log(`transfer MediaSource from ${e} `+$(r)),this.detachedData=r)):t&&i&&(this.shouldPlay||(this.shouldPlay=!i.paused))}transferMediaTo(s,a){if(s.media!==a){let e=null;var n=this.hls;let r=s!==n,i=r&&s.interstitial.appendInPlace;var o=null==(o=this.detachedData)?void 0:o.mediaSource;let t;t=n.media?(i&&(e=n.transferMedia(),this.detachedData=e),"Primary"):o?(l=this.getBufferingPlayer())?(e=l.transferMedia(),""+l):"detached MediaSource":"detached media",e||(o?(e=this.detachedData,this.log("using detachedData: MediaSource "+$(e))):this.detachedData&&n.media!==a||(1<(l=this.playerQueue).length&&l.forEach(e=>{var t;r&&e.interstitial.appendInPlace!==i&&(t=e.interstitial,this.clearInterstitial(e.interstitial,null),t.appendInPlace=!1,t.appendInPlace)&&this.warn("Could not change append strategy for queued assets "+t)}),this.hls.detachMedia(),this.detachedData={media:a}));var n=e&&"mediaSource"in e&&"closed"!==(null==(o=e.mediaSource)?void 0:o.readyState),l=n&&e?e:a;this.log(`${n?"transfering MediaSource":"attaching media"} to ${r?s:"Primary"} from `+t),l===e&&(o=r&&s.assetId===this.schedule.assetIdAtEnd,l.overrides={duration:this.schedule.duration,endOfStream:!r||o,cueRemoval:!r}),s.attachMedia(l)}}onInterstitialCueEnter(){this.onTimeupdate()}checkStart(){var e,t,r=this.schedule,i=r.events;i&&!this.playbackDisabled&&this.media&&(-1===this.bufferedPos&&(this.bufferedPos=0),t=this.timelinePos,e=this.effectivePlayingItem,-1===t?(t=this.hls.startPosition,this.timelinePos=t,i.length&&i[0].cue.pre?(i=r.findEventIndex(i[0].identifier),this.setSchedulePosition(i)):(0<=t||!this.primaryLive)&&(i=this.timelinePos=0{var e=e.interstitial,t=this.schedule.findEventIndex(e.identifier);(t=t.end)&&(e=this.getPrimaryResumption(t,r),this.timelinePos=e),this.attachPrimary(e,t)}e&&(i=this.schedule.items)&&(this.log("resumed "+Vd(t)),this.hls.trigger(X.INTERSTITIALS_PRIMARY_RESUMED,{schedule:i.slice(0),scheduleIndex:r}),this.checkBuffer())}getPrimaryResumption(e,t){e=e.start;if(this.primaryLive){var r=this.primaryDetails;if(0===t)return this.hls.startPosition;if(r&&(er.edge))return this.hls.liveSyncPosition||-1}return e}isAssetBuffered(e){var t=this.getAssetPlayer(e.identifier);return null!=t&&t.hls?t.hls.bufferedToEnd:qs.bufferInfo(this.primaryMedia,this.timelinePos,0).end+1>=e.timelineStart+(e.duration||0)}attachPrimary(e,t,r){t?this.setBufferingItem(t):this.bufferingItem=this.playingItem,this.bufferingAsset=null;var i,t=this.primaryMedia;t&&((i=this.hls).media?this.checkBuffer():(this.transferMediaTo(i,t),r&&this.startLoadingPrimaryAt(e,r)),r||(this.timelinePos=e,this.startLoadingPrimaryAt(e,r)))}startLoadingPrimaryAt(e,t){var r,i=this.hls;!i.loadingEnabled||!i.media||.5e.hls.setAudioOption(t)||e.hls.setAudioOption(r))}onSubtitleTrackSwitch(e,t){let r=zo(t);this.playerQueue.forEach(e=>e.hls.setSubtitleOption(t)||-1!==t.id&&e.hls.setSubtitleOption(r))}onBufferCodecs(e,t){t=t.tracks;t&&(this.requiredTracks=t)}onBufferAppended(e,t){this.checkBuffer()}onBufferFlushed(e,t){var r=this.playingItem;!r||this.itemsMatch(r,this.bufferingItem)||this.isInterstitial(r)||(r=this.timelinePos,this.bufferedPos=r,this.checkBuffer())}onBufferedToEnd(e){var t=this.schedule.events;if(this.bufferedPost))if(1===r.length&&this.itemsMatch(r[0],a))this.bufferedPos=t;else{var n,o,l,h=this.playingItem,d=this.findItemIndex(h);let e=s.findItemIndexAtTime(t);this.bufferedPos=a.end||null!=(n=o.event)&&n.appendInPlace&&t+.01>=o.start)&&(e=l),1s&&e>d?this.bufferedToItem(o):(l=this.primaryDetails,this.primaryLive&&l&&t>l.edge-l.targetduration&&o.start{e=this.getAssetPlayer(e.identifier);return!(null!=e&&e.bufferedInPlaceToEnd(t))})}setBufferingItem(e){var t=this.bufferingItem,r=this.schedule;if(this.itemsMatch(e,t))this.bufferingItem!==e&&(this.bufferingItem=e);else{var{items:r,events:i}=r;if(!r||!i)return t;var s=this.isInterstitial(e),a=this.getBufferingPlayer();this.bufferingItem=e,this.bufferedPos=Math.max(e.start,Math.min(e.end,this.timelinePos)),this.playbackDisabled||(a=a?a.remaining:t?t.end-this.timelinePos:0,this.log("buffered to boundary "+Vd(e)+(t?` (${a.toFixed(2)} remaining)`:"")),s?e.event.assetList.forEach(e=>{e=this.getAssetPlayer(e.identifier);e&&e.resumeBuffering()}):(this.hls.resumeBuffering(),this.playerQueue.forEach(e=>e.pauseBuffering()))),this.hls.trigger(X.INTERSTITIALS_BUFFERED_TO_BOUNDARY,{events:i.slice(0),schedule:r.slice(0),bufferingIndex:this.findItemIndex(e),playingIndex:this.findItemIndex(this.playingItem)})}return t}bufferedToItem(e,t=0){var r=this.setBufferingItem(e);this.playbackDisabled||(this.isInterstitial(e)?this.bufferedToEvent(e,t):null!==r&&(this.bufferingAsset=null,(t=this.detachedData)&&t.mediaSource?this.attachPrimary(e.start,e,!0):this.preloadPrimary(e)))}preloadPrimary(e){var t=this.findItemIndex(e),e=this.getPrimaryResumption(e,t);this.startLoadingPrimaryAt(e)}bufferedToEvent(e,t){var e=e.event,r=0===e.assetList.length&&!e.assetListLoader,i=e.cue.once;!r&&i||null!=(r=this.preloadAssets(e,t))&&r.interstitial.appendInPlace&&(i=e.assetList[t],e=this.primaryMedia,i)&&e&&this.bufferAssetPlayer(r,e)}preloadAssets(r,i){var s=r.assetUrl,a=r.assetList.length,n=0===a&&!r.assetListLoader,e=r.cue.once;if(n){n=r.timelineStart;r.appendInPlace&&(o=this.playingItem,this.isInterstitial(o)||(null==o||null==(o=o.nextEvent)?void 0:o.identifier)!==r.identifier||this.flushFrontBuffer(n+.25));let e,t=0;if(!(t=!this.playingItem&&this.primaryLive&&-1===(t=this.hls.startPosition)?this.hls.liveSyncPosition||0:t)||r.cue.pre||r.cue.post||0<(o=t-n)&&(e=Math.round(1e3*o)/1e3),this.log(`Load interstitial asset ${i+1}/${s?1:a} `+r+(e?` live-start: ${t} start-offset: `+e:"")),s)return this.createAsset(r,0,0,n,r.duration,s);var o=this.assetListLoader.loadAssetList(r,e);o&&(r.assetListLoader=o)}else if(!e&&a){for(let e=i;e{this.hls.trigger(X.BUFFER_FLUSHING,{startOffset:t,endOffset:1/0,type:e})}))}getAssetPlayerQueueIndex(t){var r=this.playerQueue;for(let e=0;e{var t,r;e.live?(r=new Error("Interstitials MUST be VOD assets "+a),t={fatal:!0,type:W.OTHER_ERROR,details:q.INTERSTITIAL_ASSET_ITEM_ERROR,error:r},this.handleAssetItemError(t,a,this.schedule.findEventIndex(a.identifier),n,r.message)):(t=e.edge-e.fragmentStart,(null===(r=s.duration)||r `+t),s.duration=t,this.updateSchedule()))},f=(e.on(X.LEVEL_UPDATED,(e,{details:t})=>u(t)),e.on(X.LEVEL_PTS_UPDATED,(e,{details:t})=>u(t)),(e,t)=>{var r=this.getAssetPlayer(h);r&&t.tracks&&(r.off(X.BUFFER_CODECS,f),r.tracks=t.tracks,t=this.primaryMedia,this.bufferingAsset===r.assetItem)&&t&&!r.media&&this.bufferAssetPlayer(r,t)}),p=(e.on(X.BUFFER_CODECS,f),()=>{var e,t,r,i=this.getAssetPlayer(h);this.log("buffered to end of asset "+i),i&&(i=this.schedule.findEventIndex(a.identifier),e=(r=a.findAssetIndex(s))+1,t=null==(t=this.schedule.items)?void 0:t[i],this.isInterstitial(t))&&(-1===r||a.isAssetPastPlayoutLimit(e)||a.assetList[e].error?(r=null==(r=this.schedule.items)?void 0:r[i+1])&&this.bufferedToItem(r):this.bufferedToItem(t,e))});e.on(X.BUFFERED_TO_END,p);i=t=>()=>{var e;this.getAssetPlayer(h)&&(this.shouldPlay=!0,e=this.schedule.findEventIndex(a.identifier),this.advanceAfterAssetEnded(a,e,t))};return e.once(X.MEDIA_ENDED,i(n)),e.once(X.PLAYOUT_LIMIT_REACHED,i(1/0)),e.on(X.ERROR,(e,t)=>{var r,i,s=this.getAssetPlayer(h);t.details===q.BUFFER_STALLED_ERROR?null!=s&&s.media&&(r=s.currentTime,i=s.duration-r,r&&a.appendInPlace&&i/s.media.playbackRate<.5?(this.log(`Advancing buffer past end of asset ${h} ${a} at `+s.media.currentTime),p()):(this.warn(`Stalled at ${r} of ${r+i} in asset ${h} `+a),this.onTimeupdate(),this.checkBuffer(!0))):this.handleAssetItemError(t,a,this.schedule.findEventIndex(a.identifier),n,`Asset player error ${t.error} `+a)}),e.on(X.DESTROYING,()=>{var e,t;this.getAssetPlayer(h)&&(e=new Error("Asset player destroyed unexpectedly "+h),t={fatal:!0,type:W.OTHER_ERROR,details:q.INTERSTITIAL_ASSET_ITEM_ERROR,error:e},this.handleAssetItemError(t,a,this.schedule.findEventIndex(a.identifier),n,e.message))}),this.hls.trigger(X.INTERSTITIAL_ASSET_PLAYER_CREATED,{asset:s,assetListIndex:n,event:a,player:e}),e}clearInterstitial(e,t){e.assetList.forEach(e=>{this.clearAssetPlayer(e.identifier,t)}),e.reset()}clearAssetPlayer(e,t){var r=this.getAssetPlayerQueueIndex(e);-1!==r&&(this.log(`clearAssetPlayer "${e}" toSegment: `+(t&&Vd(t))),e=this.playerQueue[r],this.transferMediaFromPlayer(e,t),this.playerQueue.splice(r,1),e.destroy())}emptyPlayerQueue(){for(var e;e=this.playerQueue.pop();)e.destroy();this.playerQueue=[]}startAssetPlayer(e,t,r,i,s){var{interstitial:a,assetItem:n,assetId:o}=e,l=a.assetList.length,h=this.playingAsset;this.endedAsset=null,this.playingAsset=n,h&&h.identifier===o||(h&&(this.clearAssetPlayer(h.identifier,r[i]),delete h.error),this.log(`INTERSTITIAL_ASSET_STARTED ${t+1}/${l} `+e),this.hls.trigger(X.INTERSTITIAL_ASSET_STARTED,{asset:n,assetListIndex:t,event:a,schedule:r.slice(0),scheduleIndex:i,player:e})),this.bufferAssetPlayer(e,s)}bufferAssetPlayer(e,t){var{interstitial:r,assetItem:i,assetId:s}=e,a=this.schedule.findEventIndex(r.identifier),n=null==(n=this.schedule.items)?void 0:n[a];if(n){this.setBufferingItem(n),this.bufferingAsset=i;var n=this.getBufferingPlayer();if(n!==e){var o=r.appendInPlace;if(!o||!1!==(null==n?void 0:n.interstitial.appendInPlace)){n=(null==n?void 0:n.tracks)||(null==(n=this.detachedData)?void 0:n.tracks)||this.requiredTracks;if(o&&i!==this.playingAsset){if(!e.tracks)return;if(n&&!Wn(n,e.tracks))return o=new Error(`Asset "${s}" SourceBuffer tracks ('${Object.keys(e.tracks)}') are not compatible with primary content tracks ('${Object.keys(n)}')`),s={fatal:!0,type:W.OTHER_ERROR,details:q.INTERSTITIAL_ASSET_ITEM_ERROR,error:o},n=r.findAssetIndex(i),void this.handleAssetItemError(s,r,a,n,o.message)}this.transferMediaTo(e,t)}}}}handleAssetItemError(t,r,i,s,a){if(t.details!==q.BUFFER_STALLED_ERROR){var n=r.assetList[s]||null;let e=null;n&&(o=this.getAssetPlayerQueueIndex(n.identifier),e=this.playerQueue[o]||null);var o=this.schedule.items,s=Ms({},t,{fatal:!1,errorAction:fl(!0),asset:n,assetListIndex:s,event:r,schedule:o,scheduleIndex:i,player:e});this.warn("Asset item error: "+t.error),this.hls.trigger(X.INTERSTITIAL_ASSET_ERROR,s),t.fatal&&(o=new Error(a),n&&(this.playingAsset!==n&&this.clearAssetPlayer(n.identifier,null),n.error=o),r.assetList.some(e=>!e.error)&&!r.appendInPlace||(r.error=o),this.primaryFallback(r))}}primaryFallback(t){var r=t.timelineStart,i=this.effectivePlayingItem;if(this.updateSchedule(),i){this.log(`Fallback to primary from event "${t.identifier}" start: ${r} pos: ${this.timelinePos} playing: ${i?Vd(i):""} error: `+t.error),t.appendInPlace&&(this.attachPrimary(r,null),this.flushFrontBuffer(r));let e=this.timelinePos;-1===e&&(e=this.hls.startPosition);r=this.updateItem(i,e);this.itemsMatch(i,r)?this.clearInterstitial(t,null):(i=this.schedule.findItemIndexAtTime(e),this.setSchedulePosition(i))}else this.checkStart()}onAssetListLoaded(e,t){let r,a=t.event;var n=a.identifier,t=t.assetListResponse.ASSETS;if(this.schedule.hasEvent(n)){let i=a.timelineStart;var o=a.duration;let s=0;t.forEach((e,t)=>{var r=parseFloat(e.DURATION);this.createAsset(a,t,s,i+s,r,e.URI),s+=r}),a.duration=s,this.log(`Loaded asset-list with duration: ${s} (was: ${o}) `+a);var t=this.waitingItem,o=(null==t?void 0:t.event.identifier)===n,t=(this.updateSchedule(),null==(r=this.bufferingItem)?void 0:r.event);if(o){var o=this.schedule.findEventIndex(n),l=null==(l=this.schedule.items)?void 0:l[o];if(l){if(!this.playingItem&&this.timelinePos>l.end)if(this.schedule.findItemIndexAtTime(this.timelinePos)!==o)return a.error=new Error(`Interstitial no longer within playback range ${this.timelinePos} `+a),void this.primaryFallback(a);this.setBufferingItem(l)}this.setSchedulePosition(o)}else(null==t?void 0:t.identifier)===n&&t.appendInPlace&&(l=a.assetList[0],o=this.getAssetPlayer(l.identifier),n=this.primaryMedia,l)&&o&&n&&this.bufferAssetPlayer(o,n)}}onError(e,t){switch(t.details){case q.ASSET_LIST_PARSING_ERROR:case q.ASSET_LIST_LOAD_ERROR:case q.ASSET_LIST_LOAD_TIMEOUT:var r=t.interstitial;r&&this.primaryFallback(r);break;case q.BUFFER_STALLED_ERROR:this.onTimeupdate(),this.checkBuffer(!0)}}}class Wf extends df{constructor(e,t,r){super(e,t,r,"subtitle-stream-controller",Gn),this.currentTrackId=-1,this.tracksBuffered=[],this.mainDetails=null,this.registerListeners()}onHandlerDestroying(){this.unregisterListeners(),super.onHandlerDestroying(),this.mainDetails=null}registerListeners(){super.registerListeners();var e=this.hls;e.on(X.LEVEL_LOADED,this.onLevelLoaded,this),e.on(X.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.on(X.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),e.on(X.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.on(X.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),e.on(X.BUFFER_FLUSHING,this.onBufferFlushing,this)}unregisterListeners(){super.unregisterListeners();var e=this.hls;e.off(X.LEVEL_LOADED,this.onLevelLoaded,this),e.off(X.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.off(X.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),e.off(X.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.off(X.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),e.off(X.BUFFER_FLUSHING,this.onBufferFlushing,this)}startLoad(e,t){this.stopLoad(),this.state=E.IDLE,this.setInterval(500),this.nextLoadPosition=this.lastCurrentTime=e+this.timelineOffset,this.startPosition=t?-1:e,this.tick()}onManifestLoading(){super.onManifestLoading(),this.mainDetails=null}onMediaDetaching(e,t){this.tracksBuffered=[],super.onMediaDetaching(e,t)}onLevelLoaded(e,t){this.mainDetails=t.details}onSubtitleFragProcessed(e,r){var{frag:r,success:i}=r;if(Ns(r)&&(this.fragPrevious=r),this.state=E.IDLE,i){var s=this.tracksBuffered[this.currentTrackId];if(s){let t;var a=r.start;for(let e=0;e=s[e].start&&a<=s[e].end){t=s[e];break}i=r.start+r.duration;t?t.end=i:(t={start:a,end:i},s.push(t)),this.fragmentTracker.fragBuffered(r),this.fragBufferedComplete(r,null),this.media&&this.tick()}}}onBufferFlushing(e,t){var{startOffset:i,endOffset:s}=t;if(0===i&&s!==Number.POSITIVE_INFINITY){let r=s-1;r<=0||(t.endOffsetSubtitles=Math.max(0,r),this.tracksBuffered.forEach(t=>{for(let e=0;enew Yu(e)):(this.tracksBuffered=[],this.levels=t.map(e=>{e=new Yu(e);return this.tracksBuffered[e.id]=[],e}),this.fragmentTracker.removeFragmentsInRange(0,Number.POSITIVE_INFINITY,Gn),this.fragPrevious=null,this.mediaBuffer=null)}onSubtitleTrackSwitch(e,t){this.currentTrackId=t.id,null!=(t=this.levels)&&t.length&&-1!==this.currentTrackId?(null!=(t=this.levels[this.currentTrackId])&&t.details?this.mediaBuffer=this.mediaBufferTimeRanges:this.mediaBuffer=null,t&&this.state!==E.STOPPED&&this.setInterval(500)):this.clearInterval()}onSubtitleTrackLoaded(e,t){var{currentTrackId:r,levels:i}=this,{details:s,id:a}=t;if(i){var n=i[a];if(!(i.length<=a)&&n){this.log(`Subtitle track ${a} loaded [${s.startSN},${s.endSN}]${s.lastPartSn?`[part-${s.lastPartSn}-${s.lastPartIndex}]`:""},duration:`+s.totalduration),this.mediaBuffer=this.mediaBufferTimeRanges;let e=0;if(s.live||null!=(i=n.details)&&i.live){i=this.mainDetails;if(s.deltaUpdateFailed||!i)return;var o,l=i.fragments[0];n.details?0===(e=this.alignPlaylists(s,n.details,null==(o=this.levelLastLoaded)?void 0:o.details))&&l&&hh(s,e=l.start):s.hasProgramDateTime&&i.hasProgramDateTime?(bh(s,i),e=s.fragmentStart):l&&hh(s,e=l.start)}n.details=s,this.levelLastLoaded=n,a===r&&(this.hls.trigger(X.SUBTITLE_TRACK_UPDATED,{details:s,id:a,groupId:t.groupId}),this.tick(),s.live)&&!this.fragCurrent&&this.media&&this.state===E.IDLE&&!Zo(null,s.fragments,this.media.currentTime,0)&&(this.warn("Subtitle playlist not aligned with playback"),n.details=void 0)}}else this.warn("Subtitle tracks were reset while loading level "+a)}_handleFragmentLoadComplete(e){let{frag:i,payload:t}=e;e=i.decryptdata;let s=this.hls;if(!this.fragContextChanged(i)&&t&&0{throw s.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.FRAG_DECRYPT_ERROR,fatal:!1,error:e,reason:e.message,frag:i}),e}).then(e=>{var t=performance.now();s.trigger(X.FRAG_DECRYPTED,{frag:i,payload:e,stats:{tstart:r,tdecrypt:t}})}).catch(e=>{this.warn(e.name+": "+e.message),this.state=E.IDLE})}}doTick(){if(this.media){if(this.state===E.IDLE){var{currentTrackId:t,levels:r}=this,t=null==r?void 0:r[t];if(t&&r.length&&t.details&&!this.waitForLive(t)){var r=this.config,i=this.getLoadPosition(),{end:i,len:s}=qs.bufferedInfo(this.tracksBuffered[this.currentTrackId]||[],i,r.maxBufferHole),a=t.details,n=this.hls.maxBufferLength+a.levelTargetDuration;if(!(n{if(r-1<(t>>>=0))throw new DOMException(`Failed to execute '${e}' on 'TimeRanges': The index provided (${t}) is greater than the maximum bound (${r})`);return i[t][e]};this.buffered={get length(){return i.length},end(e){return t("end",e,i.length)},start(e){return t("start",e,i.length)}}}}let qi={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,128:174,129:176,130:189,131:191,132:8482,133:162,134:163,135:9834,136:224,137:32,138:232,139:226,140:234,141:238,142:244,143:251,144:193,145:201,146:211,147:218,148:220,149:252,150:8216,151:161,152:42,153:8217,154:9473,155:169,156:8480,157:8226,158:8220,159:8221,160:192,161:194,162:199,163:200,164:202,165:203,166:235,167:206,168:207,169:239,170:212,171:217,172:249,173:219,174:171,175:187,176:195,177:227,178:205,179:204,180:236,181:210,182:242,183:213,184:245,185:123,186:125,187:92,188:94,189:95,190:124,191:8764,192:196,193:228,194:214,195:246,196:223,197:165,198:164,199:9475,200:197,201:229,202:216,203:248,204:9487,205:9491,206:9495,207:9499},Xi=e=>String.fromCharCode(qi[e]||e),Qi={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},Zi={17:2,18:4,21:6,22:8,23:10,19:13,20:15},Ji={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},es={25:2,26:4,29:6,30:8,31:10,27:13,28:15},ts=["white","green","blue","cyan","red","yellow","magenta","black","transparent"];class Xf{constructor(){this.time=null,this.verboseLevel=0}log(e,t){this.verboseLevel>=e&&(t="function"==typeof t?t():t,j.log(this.time+` [${e}] `+t))}}function zd(t){var r=[];for(let e=0;e"Cannot insert "+e.toString(16)+" ("+t+") at position "+this.pos+". Skipping it!"):(this.chars[this.pos].setChar(t,this.currPenState),this.moveCursor(1))}clearFromPos(e){let t;for(t=e;t<100;t++)this.chars[t].reset()}clear(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()}clearToEndOfRow(){this.clearFromPos(this.pos)}getTextString(){var t=[];let r=!0;for(let e=0;e<100;e++){var i=this.chars[e].uchar;" "!==i&&(r=!1),t.push(i)}return r?"":t.join("")}setPenStyles(e){this.currPenState.setStyles(e),this.chars[this.pos].setPenState(this.currPenState)}}class ep{constructor(t){this.rows=[],this.currRow=14,this.nrRollUpRows=null,this.lastOutputScreen=null,this.logger=void 0;for(let e=0;e<15;e++)this.rows.push(new Jf(t));this.logger=t}reset(){for(let e=0;e<15;e++)this.rows[e].clear();this.currRow=14}equals(t){let r=!0;for(let e=0;e<15;e++)if(!this.rows[e].equals(t.rows[e])){r=!1;break}return r}copy(t){for(let e=0;e<15;e++)this.rows[e].copy(t.rows[e])}isEmpty(){let t=!0;for(let e=0;e<15;e++)if(!this.rows[e].isEmpty()){t=!1;break}return t}backSpace(){this.rows[this.currRow].backSpace()}clearToEndOfRow(){this.rows[this.currRow].clearToEndOfRow()}insertChar(e){this.rows[this.currRow].insertChar(e)}setPen(e){this.rows[this.currRow].setPenStyles(e)}moveCursor(e){this.rows[this.currRow].moveCursor(e)}setCursor(e){this.logger.log(2,"setCursor: "+e),this.rows[this.currRow].setCursor(e)}setPAC(e){this.logger.log(2,()=>"pacData = "+$(e));let t=e.row-1;if(this.nrRollUpRows&&t"bkgData = "+$(e)),this.backSpace(),this.setPen(e),this.insertChar(32)}setRollUpRows(e){this.nrRollUpRows=e}rollUp(){var e;null===this.nrRollUpRows?this.logger.log(3,"roll_up but nrRollUpRows not set yet"):(this.logger.log(1,()=>this.getDisplayText()),e=this.currRow+1-this.nrRollUpRows,(e=this.rows.splice(e,1)[0]).clear(),this.rows.splice(this.currRow,0,e),this.logger.log(2,"Rolling up"))}getDisplayText(t){t=t||!1;var r=[];let e="";var i;for(let e=0;e<15;e++){var s=this.rows[e].getTextString();s&&(i=e+1,r.push(t?"Row "+i+": '"+s+"'":s.trim()))}return e=0"MODE="+e),"MODE_POP-ON"===this.mode?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),"MODE_ROLL-UP"!==this.mode&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=e)}insertChars(t){for(let e=0;ee+": "+this.writeScreen.getDisplayText(!0)),"MODE_PAINT-ON"!==this.mode&&"MODE_ROLL-UP"!==this.mode||(this.logger.log(1,()=>"DISPLAYED: "+this.displayedMemory.getDisplayText(!0)),this.outputDataUpdate())}ccRCL(){this.logger.log(2,"RCL - Resume Caption Loading"),this.setMode("MODE_POP-ON")}ccBS(){this.logger.log(2,"BS - BackSpace"),"MODE_TEXT"!==this.mode&&(this.writeScreen.backSpace(),this.writeScreen===this.displayedMemory)&&this.outputDataUpdate()}ccAOF(){}ccAON(){}ccDER(){this.logger.log(2,"DER- Delete to End of Row"),this.writeScreen.clearToEndOfRow(),this.outputDataUpdate()}ccRU(e){this.logger.log(2,"RU("+e+") - Roll Up"),this.writeScreen=this.displayedMemory,this.setMode("MODE_ROLL-UP"),this.writeScreen.setRollUpRows(e)}ccFON(){this.logger.log(2,"FON - Flash On"),this.writeScreen.setPen({flash:!0})}ccRDC(){this.logger.log(2,"RDC - Resume Direct Captioning"),this.setMode("MODE_PAINT-ON")}ccTR(){this.logger.log(2,"TR"),this.setMode("MODE_TEXT")}ccRTD(){this.logger.log(2,"RTD"),this.setMode("MODE_TEXT")}ccEDM(){this.logger.log(2,"EDM - Erase Displayed Memory"),this.displayedMemory.reset(),this.outputDataUpdate(!0)}ccCR(){this.logger.log(2,"CR - Carriage Return"),this.writeScreen.rollUp(),this.outputDataUpdate(!0)}ccENM(){this.logger.log(2,"ENM - Erase Non-displayed Memory"),this.nonDisplayedMemory.reset()}ccEOC(){var e;this.logger.log(2,"EOC - End Of Caption"),"MODE_POP-ON"===this.mode&&(e=this.displayedMemory,this.displayedMemory=this.nonDisplayedMemory,this.nonDisplayedMemory=e,this.writeScreen=this.nonDisplayedMemory,this.logger.log(1,()=>"DISP: "+this.displayedMemory.getDisplayText())),this.outputDataUpdate(!0)}ccTO(e){this.logger.log(2,"TO("+e+") - Tab Offset"),this.writeScreen.moveCursor(e)}ccMIDROW(e){var t={flash:!1};t.underline=e%2==1,t.italics=46<=e,t.italics?t.foreground="white":(e=Math.floor(e/2)-16,t.foreground=["white","green","blue","cyan","red","yellow","magenta"][e]),this.logger.log(2,"MIDROW: "+$(t)),this.writeScreen.setPen(t)}outputDataUpdate(e=!1){var t=this.logger.time;null!==t&&this.outputFilter&&(null!==this.cueStartTime||this.displayedMemory.isEmpty()?this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,t,this.lastOutputScreen),e&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:t):this.cueStartTime=t,this.lastOutputScreen.copy(this.displayedMemory))}cueSplitAtTime(e){!this.outputFilter||this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,e,this.displayedMemory),this.cueStartTime=e)}}class rp{constructor(e,t,r){this.channels=void 0,this.currentChannel=0,this.cmdHistory={a:null,b:null},this.logger=void 0;var i=this.logger=new Xf;this.channels=[null,new tp(e,t,i),new tp(e+1,r,i)]}getHandler(e){return this.channels[e].getHandler()}setHandler(e,t){this.channels[e].setHandler(t)}addData(e,a){this.logger.time=e;for(let s=0;s"["+zd([a[s],a[s+1]])+"] -> ("+zd([e,t])+")");var n=this.cmdHistory;if(16<=e&&e<=31){if(o=e,l=t,(h=n).a===o&&h.b===l){Kd(null,null,n),this.logger.log(3,()=>"Repeated command ("+zd([e,t])+") is dropped");continue}Kd(e,t,this.cmdHistory),r=(r=(r=(r=this.parseCmd(e,t))||this.parseMidrow(e,t))||this.parsePAC(e,t))||this.parseBackgroundAttributes(e,t)}else Kd(null,null,n);r||(i=this.parseChars(e,t))&&((o=this.currentChannel)&&0"Couldn't parse cleaned data "+zd([e,t])+" orig: "+zd([a[s],a[s+1]]))}}var o,l,h}parseCmd(e,t){var r,i;return((20===e||28===e||21===e||29===e)&&32<=t&&t<=47||(23===e||31===e)&&33<=t&&t<=35)&&(i=this.channels[r=20===e||21===e||23===e?1:2],20===e||21===e||28===e||29===e?32===t?i.ccRCL():33===t?i.ccBS():34===t?i.ccAOF():35===t?i.ccAON():36===t?i.ccDER():37===t?i.ccRU(2):38===t?i.ccRU(3):39===t?i.ccRU(4):40===t?i.ccFON():41===t?i.ccRDC():42===t?i.ccTR():43===t?i.ccRTD():44===t?i.ccEDM():45===t?i.ccCR():46===t?i.ccENM():47===t&&i.ccEOC():i.ccTO(t-32),this.currentChannel=r,!0)}parseMidrow(e,t){let r=0;var i;return(17===e||25===e)&&32<=t&&t<=47&&((r=17===e?1:2)!==this.currentChannel?(this.logger.log(0,"Mismatch channel in midrow parsing"),!1):!!(i=this.channels[r])&&(i.ccMIDROW(t),this.logger.log(3,()=>"MIDROW ("+zd([e,t])+")"),!0))}parsePAC(e,t){let r;var i;return((17<=e&&e<=23||25<=e&&e<=31)&&64<=t&&t<=127||(16===e||24===e)&&64<=t&&t<=95)&&(i=e<=23?1:2,r=(64<=t&&t<=95?1==i?Qi:Ji:1==i?Zi:es)[e],!!(e=this.channels[i]))&&(e.setPAC(this.interpretPAC(r,t)),this.currentChannel=i,!0)}interpretPAC(e,t){let r;e={color:null,italics:!1,indent:null,underline:!1,row:e};return r=95"Special char '"+Xi(e)+"' in channel "+r),i=[e]}else 32<=e&&e<=127&&(i=0===t?[e]:[e,t]);return i&&this.logger.log(3,()=>"Char codes = "+zd(i).join(",")),i}parseBackgroundAttributes(e,t){var r,i;return((16===e||24===e)&&32<=t&&t<=47||(23===e||31===e)&&45<=t&&t<=47)&&(i={},16===e||24===e?(r=Math.floor((t-32)/2),i.background=ts[r],t%2==1&&(i.background=i.background+"_semi")):45===t?i.background="transparent":(i.foreground="black",47===t&&(i.underline=!0)),this.channels[e<=23?1:2].setBkgData(i),!0)}reset(){for(let e=0;e{if(null!=ri&&ri.VTTCue)return self.VTTCue;let b=["","lr","rl"],t=["start","middle","end","left","right"];function E(e,t){return"string"==typeof t&&!!Array.isArray(e)&&(t=t.toLowerCase(),!!~e.indexOf(t))&&t}function T(e){return E(t,e)}function _(e){let t=1;for(;t/gi,"\n")}class ap{constructor(){this.state="INITIAL",this.buffer="",this.decoder=new ip,this.regionList=[],this.cue=null,this.oncue=void 0,this.onparsingerror=void 0,this.onflush=void 0}parse(e){let i=this;function r(){var e=i.buffer;let t=0;for(e=Xd(e);t{let t=r;function e(){var e=Wd(r);if(null===e)throw new Error("Malformed timestamp: "+t);return r=r.replace(/^[^\sa-zA-Z-]+/,""),e}function i(){r=r.replace(/^\s+/,"")}if(i(),s.startTime=e(),i(),"--\x3e"!==r.slice(0,3))throw new Error("Malformed time stamp (time stamps must be separated by '--\x3e'): "+t);r=r.slice(3),i(),s.endTime=e(),i();{var n=r;let i=new sp,e=(qd(n,function(t,r){let e;switch(t){case"region":for(let e=a.length-1;0<=e;e--)if(a[e].id===r){i.set(t,a[e].region);break}break;case"vertical":i.alt(t,r,["rl","lr"]);break;case"line":e=r.split(","),i.integer(t,e[0]),i.percent(t,e[0])&&i.set("snapToLines",!1),i.alt(t,e[0],["auto"]),2===e.length&&i.alt("lineAlign",e[1],["start",is,"end"]);break;case"position":e=r.split(","),i.percent(t,e[0]),2===e.length&&i.alt("positionAlign",e[1],["start",is,"end","line-left","line-right","auto"]);break;case"size":i.percent(t,r);break;case"align":i.alt(t,r,["start",is,"end","left","right"])}},/:/,/\s/),s.region=i.get("region",null),s.vertical=i.get("vertical",""),i.get("line","auto")),t=("auto"===e&&-1===rs.line&&(e=-1),s.line=e,s.lineAlign=i.get("lineAlign","start"),s.snapToLines=i.get("snapToLines",!0),s.size=i.get("size",100),s.align=i.get("align",is),i.get("position","auto"));"auto"===t&&50===rs.position&&(t="start"===s.align||"left"===s.align?0:"end"===s.align||"right"===s.align?100:50),s.position=t}})(e,i.cue,i.regionList)}catch(e){i.cue=null,i.state="BADCUE";continue}i.state="CUETEXT";continue;case"CUETEXT":var a=-1!==e.indexOf("--\x3e");if(!e||a&&(t=!0)){i.oncue&&i.cue&&i.oncue(i.cue),i.cue=null,i.state="ID";continue}if(null===i.cue)continue;i.cue.text&&(i.cue.text+="\n"),i.cue.text+=e;continue;case"BADCUE":e||(i.state="ID")}}}catch(e){"CUETEXT"===i.state&&i.cue&&i.oncue&&i.oncue(i.cue),i.cue=null,i.state="INITIAL"===i.state?"BADWEBVTT":"BADCUE"}return this}flush(){var t=this;try{if(!t.cue&&"HEADER"!==t.state||(t.buffer+="\n\n",t.parse()),"INITIAL"===t.state||"BADWEBVTT"===t.state)throw new Error("Malformed WebVTT signature.")}catch(e){t.onparsingerror&&t.onparsingerror(e)}return t.onflush&&t.onflush(),this}}function Qd(e,t,r=0){return e.slice(r,r+t.length)===t}let ss=/\r\n|\n\r|\n|\r/g;function Zd(e,t,r){return Nd(e.toString())+Nd(t.toString())+Nd(r)}function Jd(e,o,l,h,d,t,r){let i=new ap;var s,a,e=qn(new Uint8Array(e)).trim().replace(ss,"\n").split("\n");let c=[],u=o?([s,a=1]=[o.baseTime,o.timescale],rd(s,Si,1/a)):0,n="00:00.000",f=0,p=0,g,m=!0;i.oncue=function(e){var r=l[h];let t=l.ccOffset;var i,s=(f-u)/9e4;if(null!=r&&r.new)if(void 0!==p)t=l.ccOffset=r.start;else{var a=l;r=h;var n=s;let e=a[r],t=a[e.prevCC];if(!t||!t.new&&e.new)a.ccOffset=a.presentationOffset=e.start,e.new=!1;else{for(;null!=(i=t)&&i.new;)a.ccOffset+=e.start-t.start,e.new=!1,t=a[(e=t).prevCC];a.presentationOffset=n}}if(s){if(!o)return void(g=new Error("Missing initPTS for VTT MPEGTS"));t=s-l.presentationOffset}r=e.endTime-e.startTime,n=ad(9e4*(e.startTime+t-p),9e4*d)/9e4,e.startTime=Math.max(n,0),e.endTime=Math.max(n+r,0),s=e.text.trim();e.text=decodeURIComponent(encodeURIComponent(s)),e.id||(e.id=Zd(e.startTime,e.endTime,s)),0{if(m){if(Qd(e,"X-TIMESTAMP-MAP=")){m=!1,e.slice(16).split(",").forEach(e=>{Qd(e,"LOCAL:")?n=e.slice(6):Qd(e,"MPEGTS:")&&(f=parseInt(e.slice(7)))});try{p=(e=>{var t=parseInt(e.slice(-3)),r=parseInt(e.slice(-6,-4)),i=parseInt(e.slice(-9,-7)),s=9qn(e));[r,a,n=1,o=!1]=[r.baseTime,1,r.timescale];let t=rd(r,a,1/n,o);try{e.forEach(e=>i(((e,a)=>{let t=new DOMParser,r=t.parseFromString(e,"text/xml"),i=r.getElementsByTagName("tt")[0];if(!i)throw new Error("Invalid ttml");let s={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},n=Object.keys(s).reduce((e,t)=>(e[t]=i.getAttribute("ttp:"+t)||s[t],e),{}),o="preserve"!==i.getAttribute("xml:space"),l=rc(tc(i,"styling","style")),h=rc(tc(i,"layout","region")),d=tc(i,"body","[begin]");return[].map.call(d,e=>{var t=function i(e,s){return[].slice.call(e.childNodes).reduce((e,t,r)=>"br"===t.nodeName&&r?e+"\n":null!=(r=t.childNodes)&&r.length?i(t,s):s?e+t.textContent.trim().replace(/\s+/g," "):e+t.textContent,"")}(e,o);if(!t||!e.hasAttribute("begin"))return null;var r=ac(e.getAttribute("begin"),n),i=ac(e.getAttribute("dur"),n);let s=ac(e.getAttribute("end"),n);if(null===r)throw sc(e);if(null===s){if(null===i)throw sc(e);s=r+i}i=new Yd(r-a,s-a,t),i.id=Zd(i.startTime,i.endTime,i.text),r=h[e.getAttribute("region")],t=((i,s,e)=>{let a="http://www.w3.org/ns/ttml#styling",n=null,t=null!=i&&i.hasAttribute("style")?i.getAttribute("style"):null;return t&&e.hasOwnProperty(t)&&(n=e[t]),["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"].reduce((e,t)=>{var r=ic(s,a,t)||ic(i,a,t)||ic(n,a,t);return r&&(e[t]=r),e},{})})(r,l[e.getAttribute("style")],l),r=t.textAlign;return r&&((e=ls[r])&&(i.lineAlign=e),i.align=r),Ms(i,t),i}).filter(e=>null!==e)})(e,t)))}catch(e){s(e)}}}function tc(e,t,r){e=e.getElementsByTagName(t)[0];return e?[].slice.call(e.querySelectorAll(r)):[]}function rc(e){return e.reduce((e,t)=>{var r=t.getAttribute("xml:id");return r&&(e[r]=t),e},{})}function ic(e,t,r){return e&&e.hasAttributeNS(t,r)?e.getAttributeNS(t,r):null}function sc(e){return new Error("Could not parse ttml timestamp "+e)}function ac(e,t){if(!e)return null;let r=Wd(e);var i,s,a;return null===r&&(ns.test(e)?r=(i=e,s=t,i=ns.exec(i),a=(0|i[4])+(0|i[5])/s.subFrameRate,3600*(0|i[1])+60*(0|i[2])+(0|i[3])+a/s.frameRate):os.test(e)&&(r=((e,t)=>{var e=os.exec(e),r=Number(e[1]);switch(e=e[2]){case"h":return 3600*r;case"m":return 60*r;case"ms":return 1e3*r;case"f":return r/t.frameRate;case"t":return r/t.tickRate}return r})(e,t))),r}class np{constructor(e,t){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=e,this.trackName=t}dispatchCue(){null!==this.startTime&&(this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null)}newCue(e,t,r){(null===this.startTime||this.startTime>e)&&(this.startTime=e),this.endTime=t,this.screen=r,this.timelineController.createCaptionsTrack(this.trackName)}reset(){this.cueRanges=[],this.startTime=null}}class op{constructor(e){this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=lc(),this.captionsProperties=void 0,this.hls=e,this.config=e.config,this.Cues=e.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},e.on(X.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(X.MANIFEST_LOADING,this.onManifestLoading,this),e.on(X.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(X.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.on(X.FRAG_LOADING,this.onFragLoading,this),e.on(X.FRAG_LOADED,this.onFragLoaded,this),e.on(X.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.on(X.FRAG_DECRYPTED,this.onFragDecrypted,this),e.on(X.INIT_PTS_FOUND,this.onInitPtsFound,this),e.on(X.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.on(X.BUFFER_FLUSHING,this.onBufferFlushing,this)}destroy(){var e=this.hls;e.off(X.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(X.MANIFEST_LOADING,this.onManifestLoading,this),e.off(X.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(X.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.off(X.FRAG_LOADING,this.onFragLoading,this),e.off(X.FRAG_LOADED,this.onFragLoaded,this),e.off(X.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.off(X.FRAG_DECRYPTED,this.onFragDecrypted,this),e.off(X.INIT_PTS_FOUND,this.onInitPtsFound,this),e.off(X.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.off(X.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.media=null,this.cea608Parser1=this.cea608Parser2=void 0}initCea608Parsers(){var e=new np(this,"textTrack1"),t=new np(this,"textTrack2"),r=new np(this,"textTrack3"),i=new np(this,"textTrack4");this.cea608Parser1=new rp(1,e,t),this.cea608Parser2=new rp(3,r,i)}addCues(e,t,r,i,s){let a=!1;for(let e=s.length;e--;){var n=s[e],o=(l=n[0],o=n[1],h=t,Math.min(o,r)-Math.max(l,h));if(0<=o&&(n[0]=Math.min(n[0],t),n[1]=Math.max(n[1],r),a=!0,.5{this.onFragLoaded(X.FRAG_LOADED,e)}))}getExistingTrack(t,r){var i=this.media;if(i)for(let e=0;e{Od(t[e]),delete t[e]}),this.nonNativeCaptionsTracks={}}}onManifestLoading(){this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=lc(),this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=[],this.initPTS=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())}_cleanTracks(){var e=this.media;if(e){var t=e.textTracks;if(t)for(let e=0;ee.textCodec===as);if(this.config.enableWebVTT||r&&this.config.enableIMSC1)if(dd(this.tracks,t))this.tracks=t;else if(this.textTracks=[],this.tracks=t,this.config.renderTextTracksNatively){var r=this.media;let s=r?Fd(r.textTracks):null;this.tracks.forEach((r,e)=>{let i;if(s){let t=null;for(let e=0;enull!==e).map(e=>e.label)).length&&this.hls.logger.warn(`Media element contains unused subtitle tracks: ${t.join(", ")}. Replace media element for each source to clear TextTracks and captions menu.`)}else this.tracks.length&&(r=this.tracks.map(e=>({label:e.name,kind:e.type.toLowerCase(),default:e.default,subtitleTrack:e})),this.hls.trigger(X.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:r}))}onManifestLoaded(e,t){this.config.enableCEA708Captions&&t.captions&&t.captions.forEach(e=>{var t=/(?:CC|SERVICE)([1-4])/.exec(e.instreamId);t&&(t="textTrack"+t[1],t=this.captionsProperties[t])&&(t.label=e.name,e.lang&&(t.languageCode=e.lang),t.media=e)})}closedCaptionsForLevel(e){e=this.hls.levels[e.level];return null==e?void 0:e.attrs["CLOSED-CAPTIONS"]}onFragLoading(e,t){var r,i,s,a,n;this.enabled&&t.frag.type===Os&&({cea608Parser1:r,cea608Parser2:i,lastSn:s}=this,{cc:a,sn:n}=t.frag,t=null!=(t=null==(t=t.part)?void 0:t.index)?t:-1,r&&i&&(n!==s+1||n===s&&t!==this.lastPartIndex+1||a!==this.lastCc)&&(r.reset(),i.reset()),this.lastCc=a,this.lastSn=n,this.lastPartIndex=t)}onFragLoaded(e,t){var r,i,{frag:s,payload:a}=t;s.type===Gn&&(a.byteLength?(r=s.decryptdata,i="stats"in t,null!=r&&r.encrypted&&!i||(r=this.tracks[s.level],(i=this.vttCCs)[s.cc]||(i[s.cc]={start:s.start,prevCC:this.prevCC,new:!0},this.prevCC=s.cc),r&&r.textCodec===as?this._parseIMSC1(s,a):this._parseVTTs(t))):this.hls.trigger(X.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:s,error:new Error("Empty subtitle payload")}))}_parseIMSC1(t,e){let r=this.hls;ec(e,this.initPTS[t.cc],e=>{this._appendCues(e,t.level),r.trigger(X.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:t})},e=>{r.logger.log("Failed to parse IMSC1: "+e),r.trigger(X.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:t,error:e})})}_parseVTTs(i){let e,{frag:s,payload:a}=i,{initPTS:t,unparsedVttFrags:n}=this,o=t.length-1;if(t[s.cc]||-1!=o){let r=this.hls;Jd(null!=(e=s.initSegment)&&e.data?yo(s.initSegment.data,new Uint8Array(a)).buffer:a,this.initPTS[s.cc],this.vttCCs,s.cc,s.start,e=>{this._appendCues(e,s.level),r.trigger(X.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:s})},e=>{var t="Missing initPTS for VTT MPEGTS"===e.message;t?n.push(i):this._fallbackToIMSC1(s,a),r.logger.log("Failed to parse VTT cue: "+e),t&&o>s.cc||r.trigger(X.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:s,error:e})})}else n.push(i)}_fallbackToIMSC1(e,t){let r=this.tracks[e.level];r.textCodec||ec(t,this.initPTS[e.cc],()=>{r.textCodec=as,this._parseIMSC1(e,t)},()=>{r.textCodec="wvtt"})}_appendCues(e,r){var t=this.hls;if(this.config.renderTextTracksNatively){let t=this.textTracks[r];t&&"disabled"!==t.mode&&e.forEach(e=>xd(t,e))}else{var i=this.tracks[r];i&&(i=i.default?"default":"subtitles"+r,t.trigger(X.CUES_PARSED,{type:"subtitles",cues:e,track:i}))}}onFragDecrypted(e,t){var r=t.frag;r.type===Gn&&this.onFragLoaded(X.FRAG_LOADED,t)}onSubtitleTracksCleared(){this.tracks=[],this.captionsTracks={}}onFragParsingUserdata(e,t){if(this.enabled&&this.config.enableCEA708Captions){var{frag:t,samples:r}=t;if(t.type!==Os||"NONE"!==this.closedCaptionsForLevel(t))for(let e=0;eMd(t[e],r,i))}if(this.config.renderTextTracksNatively&&0===r&&void 0!==s){let t=this.textTracks;Object.keys(t).forEach(e=>Md(t[e],r,s))}}}extractCea608Data(t){var r=[[],[]],i=31&t[0];let s=2;for(let e=0;e"auto"===e.line||"auto"===t.line?0:8xd(t,e))),n}},cs=/(\d+)-(\d+)\/(\d+)/;class lp{constructor(e){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=null,this.response=null,this.controller=void 0,this.context=null,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=e.fetchSetup||hc,this.controller=new self.AbortController,this.stats=new Gu}destroy(){this.loader=this.callbacks=this.context=this.config=this.request=null,this.abortInternal(),this.response=null,this.fetchSetup=this.controller=this.stats=null}abortInternal(){this.controller&&!this.stats.loading.end&&(this.stats.aborted=!0,this.controller.abort())}abort(){var e;this.abortInternal(),null!=(e=this.callbacks)&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)}load(s,a,e){let n=this.stats;if(n.loading.start)throw new Error("Loader can only be used once.");n.loading.start=self.performance.now();var t=((e,t)=>(t={method:"GET",mode:"cors",credentials:"same-origin",signal:t,headers:new self.Headers(Ms({},e.headers))},e.rangeEnd&&t.headers.set("Range","bytes="+e.rangeStart+"-"+String(e.rangeEnd-1)),t))(s,this.controller.signal);let o="arraybuffer"===s.responseType,l=o?"byteLength":"length",{maxTimeToFirstByteMs:r,maxLoadTimeMs:h}=a.loadPolicy;this.context=s,this.config=a,this.callbacks=e,this.request=this.fetchSetup(s,t),self.clearTimeout(this.requestTimeout),a.timeout=r&&H(r)?r:h,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(n,s,this.response))},a.timeout),(hd(this.request)?this.request.then(self.fetch):self.fetch(this.request)).then(e=>{this.response=this.loader=e;var t,r=Math.max(self.performance.now(),n.loading.start);if(self.clearTimeout(this.requestTimeout),a.timeout=h,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(n,s,this.response))},h-(r-n.loading.start)),!e.ok)throw{status:i,statusText:t}=e,new hp(t||"fetch, bad network response",i,e);n.loading.first=r,n.total=(e=>{var t=e.get("Content-Range");if(t){t=(e=>{if(e=cs.exec(e))return parseInt(e[2])-parseInt(e[1])+1})(t);if(H(t))return t}if(t=e.get("Content-Length"))return parseInt(t)})(e.headers)||n.total;var i=null==(t=this.callbacks)?void 0:t.onProgress;return i&&H(a.highWaterMark)?this.loadProgressively(e,n,s,a.highWaterMark,i):o?e.arrayBuffer():"json"===s.responseType?e.json():e.text()}).then(e=>{var t=this.response;if(!t)throw new Error("loader destroyed");self.clearTimeout(this.requestTimeout),n.loading.end=Math.max(self.performance.now(),n.loading.first);var r=e[l],r=(r&&(n.loaded=n.total=r),{url:t.url,data:e,code:t.status}),i=null==(i=this.callbacks)?void 0:i.onProgress;i&&!H(a.highWaterMark)&&i(n,s,e,t),null!=(i=this.callbacks)&&i.onSuccess(r,n,s,t)}).catch(e=>{var t,r,i;self.clearTimeout(this.requestTimeout),n.aborted||(r=e&&e.code||0,i=e?e.message:null,null!=(t=this.callbacks)&&t.onError({code:r,text:i},s,e?e.details:null,n))})}getCacheAge(){let e=null;var t;return this.response&&(t=this.response.headers.get("age"),e=t?parseFloat(t):null),e}getResponseHeader(e){return this.response?this.response.headers.get(e):null}loadProgressively(r,i,s,a=0,n){let o=new cf,e=r.body.getReader(),l=()=>e.read().then(e=>{var t;return e.done?(o.dataLength&&n(i,s,o.flush().buffer,r),Promise.resolve(new ArrayBuffer(0))):(t=(e=e.value).length,i.loaded+=t,t=a&&n(i,s,o.flush().buffer,r)):n(i,s,e.buffer,r),l())}).catch(()=>Promise.reject());return l()}}function hc(e,t){return new self.Request(e.url,t)}class hp extends Error{constructor(e,t,r){super(e),this.code=void 0,this.details=void 0,this.code=t,this.details=r}}let us=/^age:\s*[\d.]+\s*$/im;class dp{constructor(e){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=null,this.loader=null,this.stats=void 0,this.xhrSetup=e&&e.xhrSetup||null,this.stats=new Gu,this.retryDelay=0}destroy(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null,this.context=null,this.xhrSetup=null}abortInternal(){var e=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),e&&(e.onreadystatechange=null,e.onprogress=null,4!==e.readyState)&&(this.stats.aborted=!0,e.abort())}abort(){var e;this.abortInternal(),null!=(e=this.callbacks)&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)}load(e,t,r){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=e,this.config=t,this.callbacks=r,this.loadInternal()}loadInternal(){let{config:e,context:s}=this;if(e&&s){let r=this.loader=new self.XMLHttpRequest,i=this.stats,t=(i.loading.first=0,i.loaded=0,i.aborted=!1,this.xhrSetup);t?Promise.resolve().then(()=>{if(this.loader===r&&!this.stats.aborted)return t(r,s.url)}).catch(e=>{if(this.loader===r&&!this.stats.aborted)return r.open("GET",s.url,!0),t(r,s.url)}).then(()=>{this.loader!==r||this.stats.aborted||this.openAndSendXhr(r,s,e)}).catch(e=>{var t;null!=(t=this.callbacks)&&t.onError({code:r.status,text:e.message},s,r,i)}):this.openAndSendXhr(r,s,e)}}openAndSendXhr(e,t,r){e.readyState||e.open("GET",t.url,!0);var i=t.headers,{maxTimeToFirstByteMs:s,maxLoadTimeMs:a}=r.loadPolicy;if(i)for(var n in i)e.setRequestHeader(n,i[n]);t.rangeEnd&&e.setRequestHeader("Range","bytes="+t.rangeStart+"-"+(t.rangeEnd-1)),e.onreadystatechange=this.readystatechange.bind(this),e.onprogress=this.loadprogress.bind(this),e.responseType=t.responseType,self.clearTimeout(this.requestTimeout),r.timeout=s&&H(s)?s:a,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),r.timeout),e.send()}readystatechange(){var{context:e,loader:t,stats:r}=this;if(e&&t){var i=t.readyState,s=this.config;if(!r.aborted&&2<=i&&(0===r.loading.first&&(r.loading.first=Math.max(self.performance.now(),r.loading.start),s.timeout!==s.loadPolicy.maxLoadTimeMs)&&(self.clearTimeout(this.requestTimeout),s.timeout=s.loadPolicy.maxLoadTimeMs,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),s.loadPolicy.maxLoadTimeMs-(r.loading.first-r.loading.start))),4===i)){self.clearTimeout(this.requestTimeout),t.onreadystatechange=null,t.onprogress=null;var i=t.status,a="text"===t.responseType?t.responseText:null;if(200<=i&&i<300){var a=null!=a?a:t.response;if(null!=a)return r.loading.end=Math.max(self.performance.now(),r.loading.first),n="arraybuffer"===t.responseType?a.byteLength:a.length,r.loaded=r.total=n,r.bwEstimate=8e3*r.total/(r.loading.end-r.loading.first),(n=null==(n=this.callbacks)?void 0:n.onProgress)&&n(r,e,a,t),n={url:t.responseURL,data:a,code:i},void(null!=(a=this.callbacks)&&a.onSuccess(n,r,e,t))}var n,a=s.loadPolicy.errorRetry;al(a,r.retry,!1,{url:e.url,data:void 0,code:i})?this.retry(a):(j.error(i+" while loading "+e.url),null!=(n=this.callbacks)&&n.onError({code:i,text:t.statusText},e,t,r))}}}loadtimeout(){var e;this.config&&(al(e=this.config.loadPolicy.timeoutRetry,this.stats.retry,!0)?this.retry(e):(j.warn("timeout while loading "+(null==(e=this.context)?void 0:e.url)),(e=this.callbacks)&&(this.abortInternal(),e.onTimeout(this.stats,this.context,this.loader))))}retry(e){var{context:t,stats:r}=this;this.retryDelay=il(e,r.retry),r.retry++,j.warn(`${status?"HTTP Status "+status:"Timeout"} while loading ${null==t?void 0:t.url}, retrying ${r.retry}/${e.maxNumRetry} in ${this.retryDelay}ms`),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay)}loadprogress(e){var t=this.stats;t.loaded=e.loaded,e.lengthComputable&&(t.total=e.total)}getCacheAge(){let e=null;var t;return this.loader&&us.test(this.loader.getAllResponseHeaders())&&(t=this.loader.getResponseHeader("age"),e=t?parseFloat(t):null),e}getResponseHeader(e){return this.loader&&new RegExp(`^${e}:\\s*[\\d.]+\\s*$`,"im").test(this.loader.getAllResponseHeaders())?this.loader.getResponseHeader(e):null}}let fs=Fs(Fs({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,maxDevicePixelRatio:Number.POSITIVE_INFINITY,preferManagedMediaSource:!0,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,frontBufferFlushThreshold:1/0,maxBufferSize:6e7,maxFragLookUpTolerance:.25,maxBufferHole:.1,detectStallWithCurrentTimeMs:1250,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,nudgeOnVideoHole:!0,liveSyncDurationCount:3,liveSyncOnStallIncrease:1,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,workerPath:null,enableSoftwareAES:!0,startLevel:void 0,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,ignorePlaylistParsingErrors:!1,loader:dp,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:Wu,bufferController:Mf,capLevelController:Ff,errorController:qu,fpsController:class{constructor(e){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=e,this.registerListeners()}setStreamController(e){this.streamController=e}registerListeners(){this.hls.on(X.MEDIA_ATTACHING,this.onMediaAttaching,this),this.hls.on(X.MEDIA_DETACHING,this.onMediaDetaching,this)}unregisterListeners(){this.hls.off(X.MEDIA_ATTACHING,this.onMediaAttaching,this),this.hls.off(X.MEDIA_DETACHING,this.onMediaDetaching,this)}destroy(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null}onMediaAttaching(e,t){var r=this.hls.config;r.capLevelOnFPSDrop&&(t=t.media instanceof self.HTMLVideoElement?t.media:null,(this.media=t)&&"function"==typeof t.getVideoPlaybackQuality&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),r.fpsDroppedMonitoringPeriod))}onMediaDetaching(){this.media=null}checkFPS(e,t,r){var i,s,a,n,o=performance.now();t&&(this.lastTime&&(n=o-this.lastTime,i=r-this.lastDroppedFrames,s=t-this.lastDecodedFrames,n=1e3*i/n,(a=this.hls).trigger(X.FPS_DROP,{currentDropped:i,currentDecoded:s,totalDroppedFrames:r}),0a.config.fpsDroppedMonitoringThreshold*s&&(n=a.currentLevel,a.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+n),0=n)&&(n-=1,a.trigger(X.FPS_DROP_LEVEL_CAPPING,{level:n,droppedLevel:a.currentLevel}),a.autoLevelCapping=n,this.streamController.nextLevelSwitch()),this.lastTime=o,this.lastDroppedFrames=r,this.lastDecodedFrames=t)}checkFPSInterval(){var e,t=this.media;t&&(this.isVideoPlaybackQualityAvailable?(e=t.getVideoPlaybackQuality(),this.checkFPS(t,e.totalVideoFrames,e.droppedVideoFrames)):this.checkFPS(t,t.webkitDecodedFrameCount,t.webkitDroppedFrameCount))}},stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrEwmaDefaultEstimateMax:5e6,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:ii,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableEmsgKLVMetadata:!1,enableID3MetadataCues:!0,enableInterstitialPlayback:!0,interstitialAppendInPlace:!0,interstitialLiveLookAhead:10,useMediaCapabilities:!0,certLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:null,errorRetry:null}},keyLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"},errorRetry:{maxNumRetry:8,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"}}},manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:2,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:4,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:6,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},steeringManifestLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},interstitialAssetListLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:3e4,timeoutRetry:{maxNumRetry:0,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:0,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3},{cueHandler:ds,enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}),{},{subtitleStreamController:Wf,subtitleTrackController:Gf,timelineController:op,audioStreamController:Cf,audioTrackController:Df,emeController:$f,cmcdController:class{constructor(e){this.hls=void 0,this.config=void 0,this.media=void 0,this.sid=void 0,this.cid=void 0,this.useHeaders=!1,this.includeKeys=void 0,this.initialized=!1,this.starved=!1,this.buffering=!0,this.audioBuffer=void 0,this.videoBuffer=void 0,this.onWaiting=()=>{this.initialized&&(this.starved=!0),this.buffering=!0},this.onPlaying=()=>{this.initialized||(this.initialized=!0),this.buffering=!1},this.applyPlaylistData=e=>{try{this.apply(e,{ot:A.MANIFEST,su:!this.initialized})}catch(e){this.hls.logger.warn("Could not generate manifest CMCD data.",e)}},this.applyFragmentData=e=>{try{var{frag:t,part:r}=e,i=this.hls.levels[t.level],s=this.getObjectType(t),a={d:1e3*(r||t).duration,ot:s},n=(s!==A.VIDEO&&s!==A.AUDIO&&s!=A.MUXED||(a.br=i.bitrate/1e3,a.tb=this.getTopBandwidth(s)/1e3,a.bl=this.getBufferLength(s)),r?this.getNextPart(r):this.getNextFrag(t));null!=n&&n.url&&n.url!==t.url&&(a.nor=n.url),this.apply(e,a)}catch(e){this.hls.logger.warn("Could not generate segment CMCD data.",e)}},this.hls=e;var t=this.config=e.config,r=t.cmcd;null!=r&&(t.pLoader=this.createPlaylistLoader(),t.fLoader=this.createFragmentLoader(),this.sid=r.sessionId||e.sessionId,this.cid=r.contentId,this.useHeaders=!0===r.useHeaders,this.includeKeys=r.includeKeys,this.registerListeners())}registerListeners(){var e=this.hls;e.on(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(X.MEDIA_DETACHED,this.onMediaDetached,this),e.on(X.BUFFER_CREATED,this.onBufferCreated,this)}unregisterListeners(){var e=this.hls;e.off(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(X.MEDIA_DETACHED,this.onMediaDetached,this),e.off(X.BUFFER_CREATED,this.onBufferCreated,this)}destroy(){this.unregisterListeners(),this.onMediaDetached(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null,this.onWaiting=this.onPlaying=this.media=null}onMediaAttached(e,t){this.media=t.media,this.media.addEventListener("waiting",this.onWaiting),this.media.addEventListener("playing",this.onPlaying)}onMediaDetached(){this.media&&(this.media.removeEventListener("waiting",this.onWaiting),this.media.removeEventListener("playing",this.onPlaying),this.media=null)}onBufferCreated(e,t){var r;this.audioBuffer=null==(r=t.tracks.audio)?void 0:r.buffer,this.videoBuffer=null==(r=t.tracks.video)?void 0:r.buffer}createData(){var e;return{v:1,sf:Pi.HLS,sid:this.sid,cid:this.cid,pr:null==(e=this.media)?void 0:e.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}}apply(e,r={}){Ms(r,this.createData());var t=r.ot===A.INIT||r.ot===A.VIDEO||r.ot===A.MUXED;this.starved&&t&&(r.bs=!0,r.su=!0,this.starved=!1),null==r.su&&(r.su=this.buffering);let i=this.includeKeys;i&&(r=Object.keys(r).reduce((e,t)=>(i.includes(t)&&(e[t]=r[t]),e),{}));t={baseUrl:e.url};this.useHeaders?(e.headers||(e.headers={}),Rd(e.headers,r,t)):e.url=Id(e.url,r,t)}getNextFrag(e){var t=null==(t=this.hls.levels[e.level])?void 0:t.details;if(t)return e=e.sn-t.startSN,t.fragments[1+e]}getNextPart(e){var t,{index:r,fragment:e}=e,i=null==(t=this.hls.levels[e.level])||null==(t=t.details)?void 0:t.partList;if(i){var s=e.sn;for(let e=i.length-1;0<=e;e--){var a=i[e];if(a.index===r&&a.fragment.sn===s)return i[e+1]}}}getObjectType(e){var t=e.type;return"subtitle"===t?A.TIMED_TEXT:"initSegment"===e.sn?A.INIT:"audio"===t?A.AUDIO:"main"===t?this.hls.audioTracks.length?A.VIDEO:A.MUXED:void 0}getTopBandwidth(e){let t=0,r;var i,s=this.hls;for(i of r=e===A.AUDIO?s.audioTracks:(e=-1<(e=s.maxAutoLevel)?e+1:s.levels.length,s.levels.slice(0,e)))i.bitrate>t&&(t=i.bitrate);return 0(e[t]=dc(r[t]),e),{}):r}function cc(e,t){var r=e.loader;r!==lp&&r!==dp?(t.log("[config]: Custom loader detected, cannot enable progressive streaming"),e.progressive=!1):(()=>{if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch(e){}return!1})()&&(e.loader=lp,e.progressive=!0,e.enableSoftwareAES=!0,t.log("[config]: Progressive streaming enabled, using FetchLoader"))}class cp extends sf{constructor(e,t){super("gap-controller",e.logger),this.hls=null,this.fragmentTracker=null,this.media=null,this.mediaSource=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.buffered={},this.lastCurrentTime=0,this.ended=0,this.waiting=0,this.onMediaPlaying=()=>{this.ended=0,this.waiting=0},this.onMediaWaiting=()=>{var e;null!=(e=this.media)&&e.seeking||(this.waiting=self.performance.now(),this.tick())},this.onMediaEnded=()=>{var e;this.hls&&(this.ended=(null==(e=this.media)?void 0:e.currentTime)||1,this.hls.trigger(X.MEDIA_ENDED,{stalled:!1}))},this.hls=e,this.fragmentTracker=t,this.registerListeners()}registerListeners(){var e=this.hls;e&&(e.on(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(X.BUFFER_APPENDED,this.onBufferAppended,this))}unregisterListeners(){var e=this.hls;e&&(e.off(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(X.BUFFER_APPENDED,this.onBufferAppended,this))}destroy(){super.destroy(),this.unregisterListeners(),this.media=this.hls=this.fragmentTracker=null,this.mediaSource=void 0}onMediaAttached(e,t){this.setInterval(100),this.mediaSource=t.mediaSource;t=this.media=t.media;Gd(t,"playing",this.onMediaPlaying),Gd(t,"waiting",this.onMediaWaiting),Gd(t,"ended",this.onMediaEnded)}onMediaDetaching(e,t){this.clearInterval();var r=this.media;r&&(Hd(r,"playing",this.onMediaPlaying),Hd(r,"waiting",this.onMediaWaiting),Hd(r,"ended",this.onMediaEnded),this.media=null),this.mediaSource=void 0}onBufferAppended(e,t){this.buffered=t.timeRanges}get hasBuffered(){return 0s.end(0)&&1<(i=qs.bufferedInfo(qs.timeRangesToArray(this.buffered.audio),e,0)).len&&t>=i.start&&(i=qs.timeRangesToArray(s),-1<(s=qs.bufferedInfo(i,t,0).bufferedIndex))&&s ${i} buffered index: `+t),this.warn(s.message),this.media.currentTime+=1e-6,r=this.fragmentTracker.getPartialFragment(e)||void 0,i=qs.bufferInfo(this.media,e,0),this.hls.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.BUFFER_SEEK_OVER_HOLE,fatal:!1,error:s,reason:s.message,frag:r,buffer:i.len,bufferInfo:i}))}_tryFixBufferStall(e,t){var{fragmentTracker:r,media:i}=this,s=null==(s=this.hls)?void 0:s.config;if(i&&r&&s){var i=i.currentTime,a=null==(a=this.hls)?void 0:a.latestLevelDetails,r=r.getPartialFragment(i);if(r||null!=a&&a.live&&is.maxBufferHole||e.nextStart&&e.nextStart-i1e3*s.highBufferWatchdogPeriod||this.waiting)&&(this.warn("Trying to nudge playhead over buffer-hole"),this._tryNudgeBuffer(e))}}_reportStall(e){var{hls:t,media:r,stallReported:i,stalled:s}=this;!i&&null!==s&&r&&t&&(this.stallReported=!0,i=new Error(`Playback stalling at @${r.currentTime} due to low buffer (${$(e)})`),this.warn(i.message),t.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.BUFFER_STALLED_ERROR,fatal:!1,error:i,buffer:e.len,bufferInfo:e,stalled:{start:s}}))}_trySkipBufferHole(t){var{fragmentTracker:r,media:e}=this,i=null==(i=this.hls)?void 0:i.config;if(e&&r&&i){var s=e.currentTime,a=qs.bufferInfo(e,s,0),n=si.maxBufferHole){let e=!1;if(!(e=0===s&&(o=r.getAppendedFrag(0,Os))&&n{var e=pc();try{e&&new e(0,Number.POSITIVE_INFINITY,"")}catch(e){return Number.MAX_VALUE}return Number.POSITIVE_INFINITY})();class up{constructor(e){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.removeCues=!0,this.onEventCueEnter=()=>{this.hls&&this.hls.trigger(X.EVENT_CUE_ENTER,{})},this.hls=e,this._registerListeners()}destroy(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=this.onEventCueEnter=null}_registerListeners(){var e=this.hls;e.on(X.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(X.MANIFEST_LOADING,this.onManifestLoading,this),e.on(X.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.on(X.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(X.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(X.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this)}_unregisterListeners(){var e=this.hls;e.off(X.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(X.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(X.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(X.MANIFEST_LOADING,this.onManifestLoading,this),e.off(X.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.off(X.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(X.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(X.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this)}onMediaAttaching(e,t){this.media=t.media,!1===(null==(t=t.overrides)?void 0:t.cueRemoval)&&(this.removeCues=!1)}onMediaAttached(){var e=this.hls.latestLevelDetails;e&&this.updateDateRangeCues(e)}onMediaDetaching(e,t){this.media=null,!t.transferMedia&&(this.id3Track&&(this.removeCues&&Od(this.id3Track,this.onEventCueEnter),this.id3Track=null),this.dateRangeCuesAppended={})}onManifestLoading(){this.dateRangeCuesAppended={}}createTrack(e){e=this.getID3Track(e.textTracks);return e.mode="hidden",e}getID3Track(t){if(this.media){for(let e=0;eps?ps:t)-l<=0&&(t=l+.25);for(let e=0;ee.type===T.audioId3&&r:"video"===a?e=>e.type===T.emsg&&t:e=>e.type===T.audioId3&&r||e.type===T.emsg&&t)}}}onLevelUpdated(e,{details:t}){this.updateDateRangeCues(t,!0)}onLevelPtsUpdated(e,t){.01!a.includes(e));for(let e=o.length;e--;){var l=o[e];let r=n[l].cues;delete n[l],Object.keys(r).forEach(e=>{try{var t=r[e];t.removeEventListener("enter",this.onEventCueEnter),i.removeCue(t)}catch(e){}})}}else n=this.dateRangeCuesAppended={};r=t.fragments[t.fragments.length-1];if(0!==a.length&&H(null==r?void 0:r.programDateTime)){this.id3Track||(this.id3Track=this.createTrack(this.media));var h=pc();for(let e=0;e{if(t!==r.id){t=s[t];if(t.class===r.class&&t.startDate>r.startDate&&(!e||r.startDate{var e,t,r,i=this.media,s=this.levelDetails;i&&s&&(this.currentTime=i.currentTime,null!==(e=this.computeLatency()))&&(this._latency=e,{lowLatencyMode:t,maxLiveSyncPlaybackRate:r}=this.config,t)&&1!==r&&s.live&&null!==(t=this.targetLatency)&&((e=e-t){e.loadError=0,e.fragmentError=0}),super.stopLoad()}resetLevels(){this._startLevel=void 0,this.manualLevelIndex=-1,this.currentLevelIndex=-1,this.currentLevel=null,this._levels=[],this._maxAutoLevel=-1}onManifestLoading(e,t){this.resetLevels()}onManifestLoaded(e,t){let f=this.hls.config.preferManagedMediaSource,p=[],g={},m={},v=!1,y=!1,b=!1;t.levels.forEach(t=>{var e=t.attrs;let{audioCodec:r,videoCodec:i}=t;r&&(t.audioCodec=r=Po(r,f)||void 0),0===(null==(l=i)?void 0:l.indexOf("avc1"))&&(i=t.videoCodec=(e=>{var t=e.split(",");for(let e=0;e(!!e||!(!r||!i))&&!!(e=t)&&-1{if(this.hls){let e="no level with compatible codecs found in manifest",t=e;i.levels.length&&(t="one or more CODECS in variant not supported: "+$(i.levels.map(e=>e.attrs.CODECS).filter((e,t,r)=>r.indexOf(e)===t)),this.warn(t),e+=` (${t})`);var r=new Error(e);this.hls.trigger(X.ERROR,{type:W.MEDIA_ERROR,details:q.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:i.url,error:r,reason:t})}});else{i.audioTracks&&mc(n=i.audioTracks.filter(e=>!e.audioCodec||this.isAudioSupported(e.audioCodec))),i.subtitles&&mc(o=i.subtitles);var h=l.slice(0);l.sort((e,t)=>{if(e.attrs["HDCP-LEVEL"]!==t.attrs["HDCP-LEVEL"])return(e.attrs["HDCP-LEVEL"]||"")>(t.attrs["HDCP-LEVEL"]||"")?1:-1;if(s&&e.height!==t.height)return e.height-t.height;if(e.frameRate!==t.frameRate)return e.frameRate-t.frameRate;if(e.videoRange!==t.videoRange)return Wr.indexOf(e.videoRange)-Wr.indexOf(t.videoRange);if(e.videoCodec!==t.videoCodec){var r=Io(e.videoCodec),i=Io(t.videoCodec);if(r!==i)return i-r}if(e.uri===t.uri&&e.codecSet!==t.codecSet){i=Co(e.codecSet),r=Co(t.codecSet);if(i!==r)return r-i}return e.averageBitrate!==t.averageBitrate?e.averageBitrate-t.averageBitrate:0});let t=h[0];if(this.steering&&(l=this.steering.filterParsedLevels(l)).length!==h.length)for(let e=0;e!!e.url)};this.hls.trigger(X.MANIFEST_PARSED,e)}}get levels(){return 0===this._levels.length?null:this._levels}get loadLevelObj(){return this.currentLevel}get level(){return this.currentLevelIndex}set level(e){var t=this._levels;if(0!==t.length){if(e<0||e>=t.length){var r=new Error("invalid level idx"),i=e<0;if(this.hls.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.LEVEL_SWITCH_ERROR,level:e,fatal:i,error:r,reason:r.message}),i)return;e=Math.min(e,t.length-1)}var r=this.currentLevelIndex,i=this.currentLevel,s=i?i.attrs["PATHWAY-ID"]:void 0,t=t[e],a=t.attrs["PATHWAY-ID"];this.currentLevelIndex=e,this.currentLevel=t,r===e&&i&&s===a||(this.log(`Switching to level ${e} (${t.height?t.height+"p ":""}${t.videoRange?t.videoRange+" ":""}${t.codecSet?t.codecSet+" ":""}@${t.bitrate})${a?" with Pathway "+a:""} from level `+r+(s?" with Pathway "+s:"")),a={level:e,attrs:t.attrs,details:t.details,bitrate:t.bitrate,averageBitrate:t.averageBitrate,maxBitrate:t.maxBitrate,realBitrate:t.realBitrate,width:t.width,height:t.height,codecSet:t.codecSet,audioCodec:t.audioCodec,videoCodec:t.videoCodec,audioGroups:t.audioGroups,subtitleGroups:t.subtitleGroups,loaded:t.loaded,loadError:t.loadError,fragmentError:t.fragmentError,name:t.name,id:t.id,uri:t.uri,url:t.url,urlId:0,audioGroupIds:t.audioGroupIds,textGroupIds:t.textGroupIds},this.hls.trigger(X.LEVEL_SWITCHING,a),(r=t.details)&&!r.live)||(s=this.switchParams(t.uri,null==i?void 0:i.details,r),this.loadPlaylist(s))}}get manualLevel(){return this.manualLevelIndex}set manualLevel(e){this.manualLevelIndex=e,void 0===this._startLevel&&(this._startLevel=e),-1!==e&&(this.level=e)}get firstLevel(){return this._firstLevel}set firstLevel(e){this._firstLevel=e}get startLevel(){var e;return void 0===this._startLevel?void 0!==(e=this.hls.config.startLevel)?e:this.hls.firstAutoLevel:this._startLevel}set startLevel(e){this._startLevel=e}get pathways(){return this.steering?this.steering.pathways():[]}get pathwayPriority(){return this.steering?this.steering.pathwayPriority:null}set pathwayPriority(e){if(this.steering){let t=this.steering.pathways();var r=e.filter(e=>-1!==t.indexOf(e));e.length<1?this.warn(`pathwayPriority ${e} should contain at least one pathway from list: `+t):this.steering.pathwayPriority=r}}onError(e,t){!t.fatal&&t.context&&t.context.type===Un&&t.context.level===this.level&&this.checkRetry(t)}onFragBuffered(e,{frag:r}){if(void 0!==r&&r.type===Os){let t=r.elementaryStreams;Object.keys(t).some(e=>!!t[e])&&null!=(r=this._levels[r.level])&&r.loadError&&(this.log(`Resetting level error count of ${r.loadError} on frag buffered`),r.loadError=0)}}onLevelLoaded(e,t){var{level:r,details:i}=t,s=t.levelInfo;if(s)if(s===this.currentLevel||t.withoutMultiVariant){0===s.fragmentError&&(s.loadError=0);let e=s.details;e===t.details&&e.advanced&&(e=void 0),this.playlistLoaded(r,t,e)}else null!=(s=t.deliveryDirectives)&&s.skip&&(i.deltaUpdateFailed=!0);else this.warn("Invalid level index "+r),null!=(s=t.deliveryDirectives)&&s.skip&&(i.deltaUpdateFailed=!0)}loadPlaylist(e){super.loadPlaylist(),this.shouldLoadPlaylist(this.currentLevel)&&this.scheduleLoading(this.currentLevel,e)}loadingPlaylist(e,t){super.loadingPlaylist(e,t);var r=this.getUrlWithDirectives(e.uri,t),i=this.currentLevelIndex,s=e.attrs["PATHWAY-ID"],a=e.details,n=null==a?void 0:a.age;this.log(`Loading level index ${i}${void 0!==(null==t?void 0:t.msn)?" at sn "+t.msn+" part "+t.part:""}${s?" Pathway "+s:""}${n&&a.live?" age "+n.toFixed(1)+(a.type?" "+a.type||0:""):""} `+r),this.hls.trigger(X.LEVEL_LOADING,{url:r,level:i,levelInfo:e,pathwayId:e.attrs["PATHWAY-ID"],id:0,deliveryDirectives:t||null})}get nextLoadLevel(){return-1!==this.manualLevelIndex?this.manualLevelIndex:this.hls.nextAutoLevel}set nextLoadLevel(e){this.level=e,-1===this.manualLevelIndex&&(this.hls.nextAutoLevel=e)}removeLevel(r){var e,t;1!==this._levels.length&&(ph(e=this._levels.filter((e,t)=>t!==r||(this.steering&&this.steering.removeLevel(e),e===this.currentLevel&&(this.currentLevel=null,this.currentLevelIndex=-1,e.details)&&e.details.fragments.forEach(e=>e.level=-1),!1))),this._levels=e,-1{var t=e.groupId||"";e.id=r[t]=r[t]||0,r[t]++})}function vc(){return self.SourceBuffer||self.WebKitSourceBuffer}function yc(){var e;return!!Yn()&&(!(e=vc())||e.prototype&&"function"==typeof e.prototype.appendBuffer&&"function"==typeof e.prototype.remove)}class gp extends df{constructor(e,t,r){super(e,t,r,"stream-controller",Os),this.audioCodecSwap=!1,this.level=-1,this._forceStartLoad=!1,this._hasEnoughToStart=!1,this.altAudio=0,this.audioOnly=!1,this.fragPlaying=null,this.fragLastKbps=0,this.couldBacktrack=!1,this.backtrackFragment=null,this.audioCodecSwitch=!1,this.videoBuffer=null,this.onMediaPlaying=()=>{this.tick()},this.onMediaSeeked=()=>{var e=this.media,t=e?e.currentTime:null;null!==t&&H(t)&&(this.log("Media seeked to "+t.toFixed(3)),this.getBufferedFrag(t))&&(null===(e=this.getFwdBufferInfoAtPos(e,t,Os,0))||0===e.len?this.warn(`Main forward buffer length at ${t} on "seeked" event ${e?e.len:"empty"})`):this.tick())},this.registerListeners()}registerListeners(){super.registerListeners();var e=this.hls;e.on(X.MANIFEST_PARSED,this.onManifestParsed,this),e.on(X.LEVEL_LOADING,this.onLevelLoading,this),e.on(X.LEVEL_LOADED,this.onLevelLoaded,this),e.on(X.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),e.on(X.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.on(X.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.on(X.BUFFER_CREATED,this.onBufferCreated,this),e.on(X.BUFFER_FLUSHED,this.onBufferFlushed,this),e.on(X.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(X.FRAG_BUFFERED,this.onFragBuffered,this)}unregisterListeners(){super.unregisterListeners();var e=this.hls;e.off(X.MANIFEST_PARSED,this.onManifestParsed,this),e.off(X.LEVEL_LOADED,this.onLevelLoaded,this),e.off(X.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),e.off(X.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.off(X.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.off(X.BUFFER_CREATED,this.onBufferCreated,this),e.off(X.BUFFER_FLUSHED,this.onBufferFlushed,this),e.off(X.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(X.FRAG_BUFFERED,this.onFragBuffered,this)}onHandlerDestroying(){this.onMediaPlaying=this.onMediaSeeked=null,this.unregisterListeners(),super.onHandlerDestroying()}startLoad(e,t){if(this.levels){var{lastCurrentTime:r,hls:i}=this;if(this.stopLoad(),this.setInterval(100),this.level=-1,!this.startFragRequested){let e=i.startLevel;-1===e&&(i.config.testBandwidth&&1i.end&&(this.backtrackFragment=null);var n,o,t=this.backtrackFragment?this.backtrackFragment.start:i.end;let e=this.getNextFragment(t,a);this.couldBacktrack&&!this.fragPrevious&&e&&Ns(e)&&this.fragmentTracker.getState(e)!==vl?(n=(null!=(n=this.backtrackFragment)?n:e).sn-a.startSN,(n=a.fragments[n-1])&&e.cc===n.cc&&(e=n,this.fragmentTracker.removeFragment(n))):this.backtrackFragment&&i.len&&(this.backtrackFragment=null),e&&this.isLoopLoading(e,t)&&(e.gap||(o=((n=this.audioOnly&&!this.altAudio?io:so)===so?this.videoBuffer:this.mediaBuffer)||this.media)&&this.afterBufferFlushed(o,n,Os),e=this.getNextFragmentLoopLoading(e,a,i,Os,r)),e&&(!e.initSegment||e.initSegment.data||this.bitrateTest||(e=e.initSegment),this.loadFragment(e,s,t))}}}}}}}loadFragment(e,t,r){var i=this.fragmentTracker.getState(e);i===pl||i===ml?Ns(e)?this.bitrateTest?(this.log(`Fragment ${e.sn} of level ${e.level} is being downloaded to test bitrate and will not be buffered`),this._loadBitrateTestFrag(e,t)):super.loadFragment(e,t,r):this._loadInitSegment(e,t):this.clearTrackerIfNeeded(e)}getBufferedFrag(e){return this.fragmentTracker.getBufferedFrag(e,Os)}followingBufferedFrag(e){return e?this.getBufferedFrag(e.end+.5):null}immediateLevelSwitch(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)}nextLevelSwitch(){var{levels:t,media:r}=this;if(null!=r&&r.readyState){let e;var i=this.getAppendedFrag(r.currentTime),i=(i&&1{e=e.audioCodec;e&&(r=r||-1!==e.indexOf("mp4a.40.2"),i=i||-1!==e.indexOf("mp4a.40.5"))}),this.audioCodecSwitch=r&&i&&!("function"==typeof(null==(s=vc())||null==(s=s.prototype)?void 0:s.changeType)),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=t.levels,this.startFragRequested=!1}onLevelLoading(e,t){var r=this.levels;r&&this.state===E.IDLE&&(!(r=t.levelInfo).details||r.details.live&&(this.levelLastLoaded!==r||r.details.expired)||this.waitForCdnTuneIn(r.details))&&(this.state=E.WAITING_LEVEL)}onLevelLoaded(e,t){var{levels:r,startFragRequested:i}=this,s=t.level,a=t.details,n=a.totalduration;if(r){this.log(`Level ${s} loaded [${a.startSN},${a.endSN}]${a.lastPartSn?`[part-${a.lastPartSn}-${a.lastPartIndex}]`:""}, cc [${a.startCC}, ${a.endCC}] duration:`+n);var r=t.levelInfo,n=this.fragCurrent;!n||this.state!==E.FRAG_LOADING&&this.state!==E.FRAG_LOADING_WAITING_RETRY||n.level!==t.level&&n.loader&&this.abortCurrentFrag();let e=0;if(a.live||null!=(t=r.details)&&t.live){if(this.checkLiveUpdate(a),a.deltaUpdateFailed)return;e=this.alignPlaylists(a,r.details,null==(n=this.levelLastLoaded)?void 0:n.details)}if(r.details=a,this.levelLastLoaded=r,i||this.setStartPosition(a,e),this.hls.trigger(X.LEVEL_UPDATED,{details:a,level:s}),this.state===E.WAITING_LEVEL){if(this.waitForCdnTuneIn(a))return;this.state=E.IDLE}i&&a.live&&this.synchronizeToLiveEdge(a),this.tick()}else this.warn("Levels were reset while loading level "+s)}synchronizeToLiveEdge(e){var t,r,i,s,{config:a,media:n}=this;n&&(t=this.hls.liveSyncPosition,r=this.getLoadPosition(),s=e.fragmentStart,i=e.edge,s=r>=s-a.maxFragLookUpTolerance&&r<=i,null!==t)&&n.duration>t&&(r{var e;null!=(e=this.hls)&&e.trigger(X.AUDIO_TRACK_SWITCHED,t)}),i.trigger(X.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:null})):i.trigger(X.AUDIO_TRACK_SWITCHED,t))}onAudioTrackSwitched(e,t){var r,t=Xo(t.url,this.hls);t&&(r=this.videoBuffer)&&this.mediaBuffer!==r&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=r),this.altAudio=t?2:0,this.tick()}onBufferCreated(e,t){var r,i=t.tracks;let s,a,n=!1;for(r in i){var o=i[r];"main"===o.id?(a=r,s=o,"video"===r&&(o=i[r])&&(this.videoBuffer=o.buffer)):n=!0}n&&s?(this.log(`Alternate track found, use ${a}.buffered to schedule main fragment loading`),this.mediaBuffer=s.buffer):this.mediaBuffer=this.media}onFragBuffered(e,t){var{frag:t,part:r}=t,i=t.type===Os;if(i){if(this.fragContextChanged(t))return this.warn(`Fragment ${t.sn}${r?" p: "+r.index:""} of level ${t.level} finished buffering, but was aborted. state: `+this.state),void(this.state===E.PARSED&&(this.state=E.IDLE));var s=(r||t).stats;this.fragLastKbps=Math.round(8*s.total/(s.buffering.end-s.loading.first)),Ns(t)&&(this.fragPrevious=t),this.fragBufferedComplete(t,r)}s=this.media;s&&(!this._hasEnoughToStart&&qs.getBuffered(s).length&&(this._hasEnoughToStart=!0,this.seekToStartPos()),i)&&this.tick()}get hasEnoughToStart(){return this._hasEnoughToStart}onError(e,t){var r;if(t.fatal)this.state=E.ERROR;else switch(t.details){case q.FRAG_GAP:case q.FRAG_PARSING_ERROR:case q.FRAG_DECRYPT_ERROR:case q.FRAG_LOAD_ERROR:case q.FRAG_LOAD_TIMEOUT:case q.KEY_LOAD_ERROR:case q.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(Os,t);break;case q.LEVEL_LOAD_ERROR:case q.LEVEL_LOAD_TIMEOUT:case q.LEVEL_PARSING_ERROR:t.levelRetry||this.state!==E.WAITING_LEVEL||(null==(r=t.context)?void 0:r.type)!==Un||(this.state=E.IDLE);break;case q.BUFFER_ADD_CODEC_ERROR:case q.BUFFER_APPEND_ERROR:"main"===t.parent&&this.resetLoadingState();break;case q.BUFFER_FULL_ERROR:"main"===t.parent&&this.reduceLengthAndFlushBuffer(t)&&this.flushMainBuffer(0,Number.POSITIVE_INFINITY);break;case q.INTERNAL_EXCEPTION:this.recoverWorkerError(t)}}onFragLoadEmergencyAborted(){this.state=E.IDLE,this._hasEnoughToStart||(this.startFragRequested=!1,this.nextLoadPosition=this.lastCurrentTime),this.tickImmediate()}onBufferFlushed(e,{type:t}){var r;t===io&&this.altAudio||(r=(t===so?this.videoBuffer:this.mediaBuffer)||this.media)&&(this.afterBufferFlushed(r,t,Os),this.tick())}onLevelsUpdated(e,t){-1{var t,r=this.hls,i=null==e?void 0:e.frag;i&&!this.fragContextChanged(i)&&(s.fragmentError=0,this.state=E.IDLE,this.startFragRequested=!1,this.bitrateTest=!1,(t=i.stats).parsing.start=t.parsing.end=t.buffering.start=t.buffering.end=self.performance.now(),r.trigger(X.FRAG_LOADED,e),i.bitrateTest=!1)})}_handleTransmuxComplete(e){var t=this.playlistType,r=this.hls,{remuxResult:e,chunkMeta:i}=e,s=this.getCurrentContext(i);if(s){var{frag:s,part:a,level:n}=s,{video:o,text:l,id3:h,initSegment:d}=e,c=n.details,u=this.altAudio?void 0:e.audio;if(this.fragContextChanged(s))this.fragmentTracker.removeFragment(s);else{if(this.state=E.PARSING,d&&(null!=d&&d.tracks&&(f=s.initSegment||s,this._bufferInitSegment(n,d.tracks,f,i),r.trigger(X.FRAG_PARSING_INIT_SEGMENT,{frag:f,id:t,tracks:d.tracks})),n=d.initPTS,f=d.timescale,H(n))&&(this.initPTS[s.cc]={baseTime:n,timescale:f},r.trigger(X.INIT_PTS_FOUND,{frag:s,id:t,initPTS:n,timescale:f})),o&&c){u&&"audiovideo"===o.type&&this.logMuxedErr(s);var d=c.fragments[s.sn-1-c.startSN],n=s.sn===c.startSN,f=!d||s.cc>d.cc;if(!1!==e.independent){var{startPTS:d,endPTS:e,startDTS:p,endDTS:g}=o;if(a)a.elementaryStreams[o.type]={startPTS:d,endPTS:e,startDTS:p,endDTS:g};else if(o.firstKeyFrame&&o.independent&&1===i.id&&!f&&(this.couldBacktrack=!0),o.dropped&&o.independent){var m=this.getMainFwdBufferInfo(),m=(m?m.end:this.getLoadPosition())+this.config.maxBufferHole,v=o.firstKeyFramePTS||d;if(!n&&m{var t=r[e].initSegment;null!=t&&t.byteLength&&this.hls.trigger(X.BUFFER_APPENDING,{type:e,data:t,frag:i,part:null,chunkMeta:s,parent:i.type})})}this.tickImmediate()}}getMainFwdBufferInfo(){var e=this.mediaBuffer&&2===this.altAudio?this.mediaBuffer:this.media;return this.getFwdBufferInfo(e,Os)}get maxBufferLength(){var{levels:e,level:t}=this,e=null==e?void 0:e[t];return e?this.getMaxBufferLength(e.maxBitrate):this.config.maxBufferLength}backtrack(e){this.couldBacktrack=!0,this.backtrackFragment=e,this.resetTransmuxer(),this.flushBufferGap(e),this.fragmentTracker.removeFragment(e),this.fragPrevious=null,this.nextLoadPosition=e.start,this.state=E.IDLE}checkFragmentChanged(){var e,t=this.media;let r=null;t&&1{t.setKeyFormat(e)});break}}}}load(t){return!t.decryptdata&&t.encrypted&&this.emeController&&this.config.emeEnabled?this.emeController.selectKeySystemFormat(t).then(e=>this.loadInternal(t,e)):this.loadInternal(t)}loadInternal(t,e){e&&t.setKeyFormat(e);let r=t.decryptdata;if(!r)return e=new Error(e?"Expected frag.decryptdata to be defined after setting format "+e:"Missing decryption data on fragment in onKeyLoading"),Promise.reject(this.createKeyLoadError(t,q.KEY_LOAD_ERROR,e));var i,e=r.uri;if(!e)return Promise.reject(this.createKeyLoadError(t,q.KEY_LOAD_ERROR,new Error(`Invalid key URI: "${e}"`)));let s=this.keyUriToKeyInfo[e];if(null!=(i=s)&&i.decryptdata.key)return r.key=s.decryptdata.key,Promise.resolve({frag:t,keyInfo:s});if(null!=(i=s)&&i.keyLoadPromise)switch(null==(i=s.mediaKeySessionContext)?void 0:i.keyStatus){case void 0:case"status-pending":case"usable":case"usable-in-future":return s.keyLoadPromise.then(e=>(r.key=e.keyInfo.decryptdata.key,{frag:t,keyInfo:s}))}switch(s=this.keyUriToKeyInfo[e]={decryptdata:r,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},r.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return"identity"===r.keyFormat?this.loadKeyHTTP(s,t):this.loadKeyEME(s,t);case"AES-128":case"AES-256":case"AES-256-CTR":return this.loadKeyHTTP(s,t);default:return Promise.reject(this.createKeyLoadError(t,q.KEY_LOAD_ERROR,new Error(`Key supplied with unsupported METHOD: "${r.method}"`)))}}loadKeyEME(t,e){let r={frag:e,keyInfo:t};if(this.emeController&&this.config.emeEnabled){e=this.emeController.loadKey(r);if(e)return(t.keyLoadPromise=e.then(e=>(t.mediaKeySessionContext=e,r))).catch(e=>{throw t.keyLoadPromise=null,e})}return Promise.resolve(r)}loadKeyHTTP(r,a){let i=this.config;let l=new i.loader(i);return a.keyLoader=r.loader=l,r.keyLoadPromise=new Promise((n,o)=>{let s={keyInfo:r,frag:a,responseType:"arraybuffer",url:r.decryptdata.uri};var e=i.keyLoadPolicy.default,e={loadPolicy:e,timeout:e.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},t={onSuccess:(e,t,r,i)=>{var{frag:r,keyInfo:s,url:a}=r;if(!r.decryptdata||s!==this.keyUriToKeyInfo[a])return o(this.createKeyLoadError(r,q.KEY_LOAD_ERROR,new Error("after key load, decryptdata unset or changed"),i));s.decryptdata.key=r.decryptdata.key=new Uint8Array(e.data),r.keyLoader=null,s.loader=null,n({frag:r,keyInfo:s})},onError:(e,t,r,i)=>{this.resetLoader(t),o(this.createKeyLoadError(a,q.KEY_LOAD_ERROR,new Error(`HTTP Error ${e.code} loading key `+e.text),r,Fs({url:s.url,data:void 0},e)))},onTimeout:(e,t,r)=>{this.resetLoader(t),o(this.createKeyLoadError(a,q.KEY_LOAD_TIMEOUT,new Error("key loading timed out"),r))},onAbort:(e,t,r)=>{this.resetLoader(t),o(this.createKeyLoadError(a,q.INTERNAL_ABORTED,new Error("key loading aborted"),r))}};l.load(s,e,t)})}resetLoader(e){var{frag:e,keyInfo:t,url:r}=e,i=t.loader;e.keyLoader===i&&(e.keyLoader=null,t.loader=null),delete this.keyUriToKeyInfo[r],i&&i.destroy()}}function bc(e){e=e.type;switch(e){case Bn:return Vn;case $n:return Gn;default:return Os}}function Ec(e,t){let r=e.url;return r=void 0!==r&&0!==r.indexOf("data:")?r:t.url}class vp{constructor(e){this.hls=void 0,this.loaders=Object.create(null),this.variableList=null,this.onManifestLoaded=this.checkAutostartLoad,this.hls=e,this.registerListeners()}startLoad(e){}stopLoad(){this.destroyInternalLoaders()}registerListeners(){var e=this.hls;e.on(X.MANIFEST_LOADING,this.onManifestLoading,this),e.on(X.LEVEL_LOADING,this.onLevelLoading,this),e.on(X.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.on(X.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),e.on(X.LEVELS_UPDATED,this.onLevelsUpdated,this)}unregisterListeners(){var e=this.hls;e.off(X.MANIFEST_LOADING,this.onManifestLoading,this),e.off(X.LEVEL_LOADING,this.onLevelLoading,this),e.off(X.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.off(X.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),e.off(X.LEVELS_UPDATED,this.onLevelsUpdated,this)}createInternalLoader(e){var t=this.hls.config,t=new(t.pLoader||t.loader)(t);return this.loaders[e.type]=t}getInternalLoader(e){return this.loaders[e.type]}resetInternalLoader(e){this.loaders[e]&&delete this.loaders[e]}destroyInternalLoaders(){for(var e in this.loaders){var t=this.loaders[e];t&&t.destroy(),this.resetInternalLoader(e)}}destroy(){this.variableList=null,this.unregisterListeners(),this.destroyInternalLoaders()}onManifestLoading(e,t){t=t.url;this.variableList=null,this.load({id:null,level:0,responseType:"text",type:Nn,url:t,deliveryDirectives:null,levelOrTrack:null})}onLevelLoading(e,t){var{id:t,level:r,pathwayId:i,url:s,deliveryDirectives:a,levelInfo:n}=t;this.load({id:t,level:r,pathwayId:i,responseType:"text",type:Un,url:s,deliveryDirectives:a,levelOrTrack:n})}onAudioTrackLoading(e,t){var{id:t,groupId:r,url:i,deliveryDirectives:s,track:a}=t;this.load({id:t,groupId:r,level:null,responseType:"text",type:Bn,url:i,deliveryDirectives:s,levelOrTrack:a})}onSubtitleTrackLoading(e,t){var{id:t,groupId:r,url:i,deliveryDirectives:s,track:a}=t;this.load({id:t,groupId:r,level:null,responseType:"text",type:$n,url:i,deliveryDirectives:s,levelOrTrack:a})}onLevelsUpdated(e,r){var i=this.loaders[Un];if(i){let t=i.context;t&&!r.levels.some(e=>e===t.levelOrTrack)&&(i.abort(),delete this.loaders[Un])}}load(t){var r=this.hls.config;let e=this.getInternalLoader(t);if(e){var i=this.hls.logger,s=e.context;if(s&&s.levelOrTrack===t.levelOrTrack&&(s.url===t.url||s.deliveryDirectives&&!t.deliveryDirectives))return void(s.url===t.url?i.log(`[playlist-loader]: ignore ${t.url} ongoing request`):i.log(`[playlist-loader]: ignore ${t.url} in favor of `+s.url));i.log("[playlist-loader]: aborting previous loader for type: "+t.type),e.abort()}let a;if(a=t.type===Nn?r.manifestLoadPolicy.default:Ms({},r.playlistLoadPolicy.default,{timeoutRetry:null,errorRetry:null}),e=this.createInternalLoader(t),H(null==(s=t.deliveryDirectives)?void 0:s.part)){let e;t.type===Un&&null!==t.level?e=this.hls.levels[t.level].details:t.type===Bn&&null!==t.id?e=this.hls.audioTracks[t.id].details:t.type===$n&&null!==t.id&&(e=this.hls.subtitleTracks[t.id].details),e&&(i=e.partTarget,r=e.targetduration,i)&&r&&(s=1e3*Math.max(3*i,.8*r),a=Ms({},a,{maxTimeToFirstByteMs:Math.min(s,a.maxTimeToFirstByteMs),maxLoadTimeMs:Math.min(s,a.maxTimeToFirstByteMs)}))}i=a.errorRetry||a.timeoutRetry||{},r={loadPolicy:a,timeout:a.maxLoadTimeMs,maxRetry:i.maxNumRetry||0,retryDelay:i.retryDelayMs||0,maxRetryDelay:i.maxRetryDelayMs||0};e.load(t,r,{onSuccess:(e,t,r,i)=>{var s=this.getInternalLoader(r),a=(this.resetInternalLoader(r.type),e.data);0!==a.indexOf("#EXTM3U")?this.handleManifestParsingError(e,r,new Error("no EXTM3U delimiter"),i||null,t):(t.parsing.start=performance.now(),hf.isMediaPlaylist(a)||r.type!==Nn?this.handleTrackOrLevelPlaylist(e,t,r,i||null,s):this.handleMasterPlaylist(e,t,r,i))},onError:(e,t,r,i)=>{this.handleNetworkError(t,r,!1,e,i)},onTimeout:(e,t,r)=>{this.handleNetworkError(t,r,!0,void 0,e)}})}checkAutostartLoad(){var e,t,r;this.hls&&({config:{autoStartLoad:e,startPosition:t},forceStartLoad:r}=this.hls,e||r)&&(this.hls.logger.log(`${e?"auto":"force"} startLoad with configured startPosition `+t),this.hls.startLoad(t))}handleMasterPlaylist(e,t,r,i){var s,a,n,o,l,h=this.hls,d=e.data,c=Ec(e,r),u=hf.parseMasterPlaylist(d,c);u.playlistParsingError?this.handleManifestParsingError(e,r,u.playlistParsingError,i,t):({contentSteering:e,levels:r,sessionData:s,sessionKeys:a,startTimeOffset:n,variableList:o}=u,{AUDIO:d=[],SUBTITLES:u,"CLOSED-CAPTIONS":l}=(this.variableList=o,hf.parseMasterPlaylistMedia(d,c,u)),d.length&&!d.some(e=>!e.url)&&r[0].audioCodec&&!r[0].attrs.AUDIO&&(this.hls.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),d.unshift({type:"main",name:"main",groupId:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new Xs({}),bitrate:0,url:""})),h.trigger(X.MANIFEST_LOADED,{levels:r,audioTracks:d,subtitles:u,captions:l,contentSteering:e,url:c,stats:t,networkDetails:i,sessionData:s,sessionKeys:a,startTimeOffset:n,variableList:o}))}handleTrackOrLevelPlaylist(e,t,r,i,s){var a=this.hls,{id:n,level:o,type:l}=r,h=Ec(e,r),o=H(o)?o:H(n)?n:0,n=bc(r),o=hf.parseLevelPlaylist(e.data,h,o,n,0,this.variableList);l===Nn&&(n={attrs:new Xs({}),bitrate:0,details:o,name:"",url:h},o.requestScheduled=t.loading.start+dh(o,0),a.trigger(X.MANIFEST_LOADED,{levels:[n],audioTracks:[],url:h,stats:t,networkDetails:i,sessionData:null,sessionKeys:null,contentSteering:null,startTimeOffset:null,variableList:null})),t.parsing.end=performance.now(),r.levelDetails=o,this.handlePlaylistLoaded(o,e,t,r,i,s)}handleManifestParsingError(e,t,r,i,s){this.hls.trigger(X.ERROR,{type:W.NETWORK_ERROR,details:q.MANIFEST_PARSING_ERROR,fatal:t.type===Nn,url:e.url,err:r,error:r,reason:r.message,response:e,context:t,networkDetails:i,stats:s})}handleNetworkError(e,t,r=!1,i,s){let a=`A network ${r?"timeout":"error"+(i?" (status "+i.code+")":"")} occurred while loading `+e.type;e.type===Un?a+=`: ${e.level} id: `+e.id:e.type!==Bn&&e.type!==$n||(a+=` id: ${e.id} group-id: "${e.groupId}"`);var n=new Error(a);this.hls.logger.warn("[playlist-loader]: "+a);let o=q.UNKNOWN,l=!1;var h=this.getInternalLoader(e);switch(e.type){case Nn:o=r?q.MANIFEST_LOAD_TIMEOUT:q.MANIFEST_LOAD_ERROR,l=!0;break;case Un:o=r?q.LEVEL_LOAD_TIMEOUT:q.LEVEL_LOAD_ERROR,l=!1;break;case Bn:o=r?q.AUDIO_TRACK_LOAD_TIMEOUT:q.AUDIO_TRACK_LOAD_ERROR,l=!1;break;case $n:o=r?q.SUBTITLE_TRACK_LOAD_TIMEOUT:q.SUBTITLE_LOAD_ERROR,l=!1}h&&this.resetInternalLoader(e.type);h={type:W.NETWORK_ERROR,details:o,fatal:l,url:e.url,loader:h,context:e,error:n,networkDetails:t,stats:s};i&&(n=(null==t?void 0:t.url)||e.url,h.response=Fs({url:n,data:void 0},i)),this.hls.trigger(X.ERROR,h)}handlePlaylistLoaded(e,t,r,i,s,a){var n=this.hls,{type:o,level:l,id:h,groupId:d,deliveryDirectives:c}=i,u=Ec(t,i),f=bc(i),p="number"==typeof i.level&&f===Os?l:void 0;if(e.fragments.length){e.targetduration||(e.playlistParsingError=new Error("Missing Target Duration"));var l=e.playlistParsingError;if(l){if(this.hls.logger.warn(l),!n.config.ignorePlaylistParsingErrors)return void n.trigger(X.ERROR,{type:W.NETWORK_ERROR,details:q.LEVEL_PARSING_ERROR,fatal:!1,url:u,error:l,reason:l.message,response:t,context:i,level:p,parent:f,networkDetails:s,stats:r});e.playlistParsingError=null}switch(e.live&&a&&(a.getCacheAge&&(e.ageHeader=a.getCacheAge()||0),a.getCacheAge&&!isNaN(e.ageHeader)||(e.ageHeader=0)),o){case Nn:case Un:n.trigger(X.LEVEL_LOADED,{details:e,levelInfo:i.levelOrTrack||n.levels[0],level:p||0,id:h||0,stats:r,networkDetails:s,deliveryDirectives:c,withoutMultiVariant:o===Nn});break;case Bn:n.trigger(X.AUDIO_TRACK_LOADED,{details:e,track:i.levelOrTrack,id:h||0,groupId:d||"",stats:r,networkDetails:s,deliveryDirectives:c});break;case $n:n.trigger(X.SUBTITLE_TRACK_LOADED,{details:e,track:i.levelOrTrack,id:h||0,groupId:d||"",stats:r,networkDetails:s,deliveryDirectives:c})}}else l=e.playlistParsingError=new Error("No Segments found in Playlist"),n.trigger(X.ERROR,{type:W.NETWORK_ERROR,details:q.LEVEL_EMPTY_ERROR,fatal:!1,url:u,error:l,reason:l.message,response:t,context:i,level:p,parent:f,networkDetails:s,stats:r})}}class Zs{static get version(){return ci}static isMSESupported(){return yc()}static isSupported(){{if(!yc())return!1;let t=Yn();return"function"==typeof(null==t?void 0:t.isTypeSupported)&&(["avc1.42E01E,mp4a.40.2","av01.0.01M.08","vp09.00.50.08"].some(e=>t.isTypeSupported(Ro(e,"video")))||["mp4a.40.2","fLaC"].some(e=>t.isTypeSupported(Ro(e,"audio"))))}}static getMediaSource(){return Yn()}static get Events(){return X}static get MetadataSchema(){return T}static get ErrorTypes(){return W}static get ErrorDetails(){return q}static get DefaultConfig(){return Zs.defaultConfig||fs}static set DefaultConfig(e){Zs.defaultConfig=e}constructor(e={}){this.config=void 0,this.userConfig=void 0,this.logger=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new Lh,this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioStreamController=void 0,this.subtititleStreamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.interstitialsController=void 0,this.gapController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this._url=null,this._sessionId=void 0,this.triggeringException=void 0,this.started=!1;var t=this.logger=((t,e,r)=>{let i=zn();if("object"==typeof console&&!0===t||"object"==typeof t){var s=["debug","log","info","warn","error"];s.forEach(e=>{i[e]=Kn(e,t,r)});try{i.log(`Debug logs enabled for "${e}" in hls.js version 1.6.2`)}catch(e){return zn()}s.forEach(e=>{Nr[e]=Kn(e,t)})}else Ms(Nr,i);return i})(e.debug||!1,"Hls instance",e.assetPlayerId),r=this.config=((e,l,t)=>{if((l.liveSyncDurationCount||l.liveMaxLatencyDurationCount)&&(l.liveSyncDuration||l.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(void 0!==l.liveMaxLatencyDurationCount&&(void 0===l.liveSyncDurationCount||l.liveMaxLatencyDurationCount<=l.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(void 0!==l.liveMaxLatencyDuration&&(void 0===l.liveSyncDuration||l.liveMaxLatencyDuration<=l.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');let h=dc(e),r=["TimeOut","MaxRetry","RetryDelay","MaxRetryTimeout"];return["manifest","level","frag"].forEach(s=>{let a=`${"level"===s?"playlist":s}LoadPolicy`,n=void 0===l[a],o=[];r.forEach(e=>{var t=s+"Loading"+e,r=l[t];if(void 0!==r&&n){o.push(t);var i=h[a].default;switch(l[a]={default:i},e){case"TimeOut":i.maxLoadTimeMs=r,i.maxTimeToFirstByteMs=r;break;case"MaxRetry":i.errorRetry.maxNumRetry=r,i.timeoutRetry.maxNumRetry=r;break;case"RetryDelay":i.errorRetry.retryDelayMs=r,i.timeoutRetry.retryDelayMs=r;break;case"MaxRetryTimeout":i.errorRetry.maxRetryDelayMs=r,i.timeoutRetry.maxRetryDelayMs=r}}}),o.length&&t.warn(`hls.js config: "${o.join('", "')}" setting(s) are deprecated, use "${a}": `+$(l[a]))}),Fs(Fs({},h),l)})(Zs.DefaultConfig,e,t),{abrController:e,bufferController:t,capLevelController:i,errorController:s,fpsController:a}=(this.userConfig=e,r.progressive&&cc(r,t),r),s=new s(this),e=this.abrController=new e(this),n=new Xu(this),o=r.interstitialsController,o=o?this.interstitialsController=new o(this,Zs):null,t=this.bufferController=new t(this,n),i=this.capLevelController=new i(this),a=new a(this),l=new vp(this),h=r.contentSteeringController,h=h?new h(this):null,d=this.levelController=new pp(this,h),c=new up(this),u=new mp(this.config),f=this.streamController=new gp(this,n,u),p=this.gapController=new cp(this,n),d=(i.setStreamController(f),a.setStreamController(f),[l,d,f]),f=(o&&d.splice(1,0,o),h&&d.splice(1,0,h),this.networkControllers=d,[e,t,p,i,a,c,n]),o=(this.audioTrackController=this.createController(r.audioTrackController,d),r.audioStreamController),h=(o&&d.push(this.audioStreamController=new o(this,n,u)),this.subtitleTrackController=this.createController(r.subtitleTrackController,d),r.subtitleStreamController),e=(h&&d.push(this.subtititleStreamController=new h(this,n,u)),this.createController(r.timelineController,f),u.emeController=this.emeController=this.createController(r.emeController,f),this.cmcdController=this.createController(r.cmcdController,f),this.latencyController=this.createController(fp,f),this.coreComponents=f,d.push(s),s.onErrorOut);"function"==typeof e&&this.on(X.ERROR,e,s),this.on(X.MANIFEST_LOADED,l.onManifestLoaded,l)}createController(e,t){return e?(e=new e(this),t&&t.push(e),e):null}on(e,t,r=this){this._emitter.on(e,t,r)}once(e,t,r=this){this._emitter.once(e,t,r)}removeAllListeners(e){this._emitter.removeAllListeners(e)}off(e,t,r=this,i){this._emitter.off(e,t,r,i)}listeners(e){return this._emitter.listeners(e)}emit(e,t,r){return this._emitter.emit(e,t,r)}trigger(t,r){if(this.config.debug)return this.emit(t,t,r);try{return this.emit(t,t,r)}catch(e){this.logger.error("An internal error happened while handling event "+t+'. Error message: "'+e.message+'". Here is a stacktrace:',e),this.triggeringException||(this.triggeringException=!0,r=t===X.ERROR,this.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.INTERNAL_EXCEPTION,fatal:r,event:t,error:e}),this.triggeringException=!1)}return!1}listenerCount(e){return this._emitter.listenerCount(e)}destroy(){this.logger.log("destroy"),this.trigger(X.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this._url=null,this.networkControllers.forEach(e=>e.destroy()),this.networkControllers.length=0,this.coreComponents.forEach(e=>e.destroy()),this.coreComponents.length=0;var e=this.config;e.xhrSetup=e.fetchSetup=void 0,this.userConfig=null}attachMedia(e){var t,r;!e||"media"in e&&!e.media?(r=new Error(`attachMedia failed: invalid argument (${e})`),this.trigger(X.ERROR,{type:W.OTHER_ERROR,details:q.ATTACH_MEDIA_ERROR,fatal:!0,error:r})):(this.logger.log("attachMedia"),this._media&&(this.logger.warn("media must be detached before attaching"),this.detachMedia()),t=(r="media"in e)?e.media:e,r=r?e:{media:t},this._media=t,this.trigger(X.MEDIA_ATTACHING,r))}detachMedia(){this.logger.log("detachMedia"),this.trigger(X.MEDIA_DETACHING,{}),this._media=null}transferMedia(){this._media=null;var e=this.bufferController.transferMedia();return this.trigger(X.MEDIA_DETACHING,{transferMedia:e}),e}loadSource(e){this.stopLoad();var t=this.media,r=this._url,i=this._url=ro.buildAbsoluteURL(self.location.href,e,{alwaysNormalize:!0});this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.logger.log("loadSource:"+i),t&&r&&(r!==i||this.bufferController.hasSourceTypes())&&(this.detachMedia(),this.attachMedia(t)),this.trigger(X.MANIFEST_LOADING,{url:e})}get url(){return this._url}get hasEnoughToStart(){return this.streamController.hasEnoughToStart}get startPosition(){return this.streamController.startPositionValue}startLoad(t=-1,r){this.logger.log(`startLoad(${t+(r?", ":"")})`),this.started=!0,this.resumeBuffering();for(let e=0;e{e.resumeBuffering&&e.resumeBuffering()}))}pauseBuffering(){this.bufferingEnabled&&(this.logger.log("pause buffering"),this.networkControllers.forEach(e=>{e.pauseBuffering&&e.pauseBuffering()}))}get inFlightFragments(){var e={[Os]:this.streamController.inFlightFrag};return this.audioStreamController&&(e[Vn]=this.audioStreamController.inFlightFrag),this.subtititleStreamController&&(e[Gn]=this.subtititleStreamController.inFlightFrag),e}swapAudioCodec(){this.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()}recoverMediaError(){this.logger.log("recoverMediaError");var e=this._media,t=null==e?void 0:e.currentTime;this.detachMedia(),e&&(this.attachMedia(e),t)&&this.startLoad(t)}removeLevel(e){this.levelController.removeLevel(e)}get sessionId(){let e=this._sessionId;return e=e||(this._sessionId=(()=>{try{return crypto.randomUUID()}catch(e){try{var t=URL.createObjectURL(new Blob),r=t.toString();return URL.revokeObjectURL(t),r.slice(r.lastIndexOf("/")+1)}catch(e){let r=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),("x"==e?t:3&t|8).toString(16)})}}})())}get levels(){var e=this.levelController.levels;return e||[]}get latestLevelDetails(){return this.streamController.getLevelDetails()||null}get loadLevelObj(){return this.levelController.loadLevelObj}get currentLevel(){return this.streamController.currentLevel}set currentLevel(e){this.logger.log("set currentLevel:"+e),this.levelController.manualLevel=e,this.streamController.immediateLevelSwitch()}get nextLevel(){return this.streamController.nextLevel}set nextLevel(e){this.logger.log("set nextLevel:"+e),this.levelController.manualLevel=e,this.streamController.nextLevelSwitch()}get loadLevel(){return this.levelController.level}set loadLevel(e){this.logger.log("set loadLevel:"+e),this.levelController.manualLevel=e}get nextLoadLevel(){return this.levelController.nextLoadLevel}set nextLoadLevel(e){this.levelController.nextLoadLevel=e}get firstLevel(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)}set firstLevel(e){this.logger.log("set firstLevel:"+e),this.levelController.firstLevel=e}get startLevel(){var e=this.levelController.startLevel;return-1===e&&-1=r)return e}return 0}get maxAutoLevel(){var{levels:t,autoLevelCapping:e,maxHdcpLevel:r}=this;let i;if(i=-1===e&&null!=t&&t.length?t.length-1:e,r)for(let e=i;e--;){var s=t[e].attrs["HDCP-LEVEL"];if(s&&s<=r)return e}return i}get firstAutoLevel(){return this.abrController.firstAutoLevel}get nextAutoLevel(){return this.abrController.nextAutoLevel}set nextAutoLevel(e){this.abrController.nextAutoLevel=e}get playingDate(){return this.streamController.currentProgramDateTime}get mainForwardBufferInfo(){return this.streamController.getMainFwdBufferInfo()}get maxBufferLength(){return this.streamController.maxBufferLength}setAudioOption(e){var t;return(null==(t=this.audioTrackController)?void 0:t.setAudioOption(e))||null}setSubtitleOption(e){var t;return(null==(t=this.subtitleTrackController)?void 0:t.setSubtitleOption(e))||null}get allAudioTracks(){var e=this.audioTrackController;return e?e.allAudioTracks:[]}get audioTracks(){var e=this.audioTrackController;return e?e.audioTracks:[]}get audioTrack(){var e=this.audioTrackController;return e?e.audioTrack:-1}set audioTrack(e){var t=this.audioTrackController;t&&(t.audioTrack=e)}get allSubtitleTracks(){var e=this.subtitleTrackController;return e?e.allSubtitleTracks:[]}get subtitleTracks(){var e=this.subtitleTrackController;return e?e.subtitleTracks:[]}get subtitleTrack(){var e=this.subtitleTrackController;return e?e.subtitleTrack:-1}get media(){return this._media}set subtitleTrack(e){var t=this.subtitleTrackController;t&&(t.subtitleTrack=e)}get subtitleDisplay(){var e=this.subtitleTrackController;return!!e&&e.subtitleDisplay}set subtitleDisplay(e){var t=this.subtitleTrackController;t&&(t.subtitleDisplay=e)}get lowLatencyMode(){return this.config.lowLatencyMode}set lowLatencyMode(e){this.config.lowLatencyMode=e}get liveSyncPosition(){return this.latencyController.liveSyncPosition}get latency(){return this.latencyController.latency}get maxLatency(){return this.latencyController.maxLatency}get targetLatency(){return this.latencyController.targetLatency}set targetLatency(e){this.latencyController.targetLatency=e}get drift(){return this.latencyController.drift}get forceStartLoad(){return this.streamController.forceStartLoad}get pathways(){return this.levelController.pathways}get pathwayPriority(){return this.levelController.pathwayPriority}set pathwayPriority(e){this.levelController.pathwayPriority=e}get bufferedToEnd(){var e;return!(null==(e=this.bufferController)||!e.bufferedToEnd)}get interstitialsManager(){var e;return(null==(e=this.interstitialsController)?void 0:e.interstitialsManager)||null}getMediaDecodingInfo(e,t=this.allAudioTracks){return Fo(e,jo(t),navigator.mediaCapabilities)}}Zs.defaultConfig=void 0;var Tc=e`#player{display:block;background-color:#000;color:#fff;user-select:none;width:100%;position:relative;overflow:hidden;cursor:pointer;border-radius:var(--player-border-radius);box-shadow:var(--player-box-shadow)}#player.in-fullscreen{object-fit:contain;position:fixed;top:0;left:0;z-index:9999999;overflow:hidden}#player.fluid,#player.in-fullscreen{padding:0!important;margin:0;width:100%;height:100%}#player.fluid video,#player.in-fullscreen video{object-fit:contain}.controller{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;z-index:10;overflow:hidden}.controller-inner__top{display:flex;flex-direction:row}.controller-inner__bottom,.controller-inner__top--center{align-items:center;display:flex;justify-content:center}.controller-inner__top--center{flex:1}.controller-inner__bottom{transform:translateY(0);transition:transform 250ms ease 50ms}.show-controls .controller-inner__bottom:not(.controls-hidden){transform:translateY(calc(-1 * (var(--control-padding) * 2 + 1.5rem)))}.controller-inner__center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;z-index:10}.controller-spacer{flex:1}.video-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:block;z-index:0}vturb-video-hls{width:100%;height:100%}video{width:100%;height:100%;object-position:center;position:absolute;top:0;left:0;pointer-events:none}`,Es=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{this.iframeClient||(this.iframeClient=new Uu(this))},this.onPlayerClick=t=>{try{this.unlicensed||(this.controllers.blockers.noneBlocker("played")?this.togglePlay():this.controllers.bar.touch(t,()=>this.togglePlay()))}catch(e){this.logger.error("Failed to handle player click",{error:e,event:t})}},this.urlUpdater=(r,i)=>{try{return this.controllers.links.updaters.reduce((t,e)=>{try{return e(t,i)}catch(e){return this.logger.error("Failed to update URL",{element:i,error:e,url:r}),t}},r)}catch(e){return this.logger.error("Failed to update URL",{element:i,error:e,url:r}),r}}}get activeTrack(){return this.currentTrack}get subtitleTracks(){var e;return Array.from((null==(e=this.video)?void 0:e.textTracks)||[])}addEventListener(t,r,i){try{t===bs.PLAYER_READY&&this.ready?(this.logger.debug("addEventListener already ready",{listener:r,options:i,type:t}),r.call(this,new CustomEvent(bs.PLAYER_READY,{detail:{player:this}}))):super.addEventListener(t,r,i)}catch(e){this.logger.error("Failed to add player event listener",{error:e,listener:r,options:i,type:t})}}autoplay(e){this.videoAutoPlay=e}changeLicense(e){this.unlicensed=!e,this.deepUpdate()}checkAddRemoteDebugger(){window.location.search.includes("vrb=1")&&(this.logger.debug("Adding remote debugger"),((e,t,i,s,a={})=>{if(!e.getElementById(t)){let r=e.createElement(s);r.id=t,"script"===s?r.src=i:r.href=i,Object.entries(a).forEach(([e,t])=>{r.setAttribute(e,t)}),e.head.appendChild(r)}})(this.doc,"remote-debugger-script","https://remote-debugger.internal.vturb.com/target.js","script"))}connectedCallback(){super.connectedCallback(),this.addEventListener(bs.VIDEO_PLAY,()=>{this.played=!0,this.paused=!1,this.alreadyPlayed=!0,this.requestUpdate()}),this.addEventListener(bs.VIDEO_PAUSE,()=>{this.played=!1,this.paused=!0,this.requestUpdate()}),this.addEventListener(bs.VIDEO_ENDED,()=>{this.requestUpdate()}),this.addEventListener(bs.VIDEO_LOADEDMETADATA,()=>{var e,t;null!=(t=this.video)&&t.textTracks.length&&0<(t=Array.from(this.video.textTracks)).length&&null!=(e=this.config.subtitles)&&e.active&&this.setActiveTrack(t[0])}),this.checkAddRemoteDebugger(),this.observeVideoReady()}deepUpdate(){this.modules.forEach(e=>{e.requestUpdate()})}firstUpdated(e){let t=Object.create(null,{firstUpdated:{get:()=>super.firstUpdated}});return _c(this,void 0,void 0,function*(){t.firstUpdated.call(this,e),this.video&&(this.video.disableRemotePlayback=!0),yield this.updateComplete,this.logger.info("firstUpdated")})}observeVideoReady(){let e=[bs.VIDEO_CANPLAY,bs.VIDEO_CANPLAYTHROUGH,bs.SMARTAUTOPLAY_VIDEO_READY,bs.VIDEO_PLAY],i=()=>{e.forEach(e=>{this.removeEventListener(e,t)})},t=e=>{var t=this.controllers.blockers.anyBlocker("smartAutoPlay"),r=this.played;t&&e.type!==bs.SMARTAUTOPLAY_VIDEO_READY&&!r?this.logger.debug("videoReady blocked",e.type):(this.logger.info("videoReady"),this.dispatchEvent(new CustomEvent(bs.VIDEO_READY)),i())};e.forEach(e=>{this.addEventListener(e,t)})}registerModule(e){this.modules.push(e)}render(){if(this.destroyed)return c``;var e=((null==(e=this.video)?void 0:e.getBoundingClientRect())||{width:0}).width;let t=this.config;this.interface.fluid&&this.setFluid();var r={"already-played":this.controllers.blockers.anyBlocker("played"),fluid:this.interface.fluid,"has-fakebar":null==(r=t.fakeBar)?void 0:r.active,"has-rewind-forward":(null==(r=t.style)?void 0:r.rewind)&&(null==(r=t.style)?void 0:r.forward),"has-smallplay":t.style.smallPlay,"in-pause":this.paused,"in-play":this.played,"is-chrome":ra(),"is-desktop":!_s(),"is-firefox":/firefox/i.test(window.navigator.userAgent),"is-mobile":_s(),"is-safari":ia(),"m-w-360":e<=360,"m-w-480":360${JSON.stringify(t,null,2)} ${Ds(p.shouldLoadHeadlines(t),()=>c``)}
{_s()||this.controllers.bar.show()}} @mouseleave=${()=>{_s()||this.controllers.bar.hide()}} @dblclick="${()=>{this.config.style.fullscreen&&!_s()&&this.controllers.fullscreen.toggle()}}" @touchend="${e=>{this.config.style.fullscreen&&(e.timeStamp-(this.lastTouchEnd||0)<300?(e.preventDefault(),e.stopPropagation(),this.controllers.fullscreen.toggle(),this.lastTouchEnd=0):this.lastTouchEnd=e.timeStamp)}}" @click="${this.onPlayerClick}" > this.unlicensed=!0} >
${Ds(!this.unlicensed,()=>c`{this.video=e.target.video,this.ready=!0,this.trackHlsChanges(e.detail.hls,e.detail.video)}} @first-segment-loaded=${e=>{this.controllers.kpis.trackTTFF()}} poster=${t.smartAutoPlay.active||this.played||this.controllers.blockers.anyBlocker("resume")?null:t.video.picStart} disablePictureInPicture="true" controlsList="nodownload noplaybackrate nofullscreen noremoteplayback" style="-webkit-media-controls-timeline-container: none; -webkit-media-controls-timeline: none;" .muted=${this.videoAutoPlay||this.muted} .autoplay=${this.videoAutoPlay} />`)}
${Ds(this.ready&&!this.unlicensed,()=>{var e;return c`
${Ds(t.style.bigPlay||t.style.temporaryBigPlay&&this.controllers.blockers.noneBlocker("played"),()=>c``)}
${Ds(null==(e=t.subtitles)?void 0:e.active,()=>c``)}
${Ds(t.resume.active,()=>c``)} ${Ds(t.fakeBar.active,()=>c``)} ${Ds(t.minihooks.active,()=>c``)} ${Ds(m.shouldLoad(t.smartAutoPlay),()=>c``)} ${Ds(t.thumbsniper.active||t.video.picFinish,()=>c``)} ${Ds(t.pixels.active,()=>c``)} ${Ds(a.shouldLoad(t,["inner_button"]),()=>c``)}
`})}
${Ds(a.shouldLoad(t,["below_button","custom_html"]),()=>c``)} `}setActiveTrack(e){var t;null!=(t=this.video)&&t.textTracks&&(Array.from(this.video.textTracks).forEach(e=>{e.mode="hidden"}),this.currentTrack=e,this.dispatchEvent(new CustomEvent(bs.SUBTITLE_TRACK_CHANGE,{detail:{track:e}})))}setFluid(){this.style.position="absolute",this.style.top="0",this.style.left="0",this.style.width="100%",this.style.height="100%",this.style.padding="0",this.style.margin="0",this.style.borderRadius="0",this.style.boxShadow="none",this.style.overflow="hidden",this.style.objectFit="contain"}setup(e){this.interface.setup(e)}togglePlay(){this.logger.group("debug","togglePlay").message("paused",this.paused).message("smallPlay",this.config.style.smallPlay).message("bigPlay",this.config.style.bigPlay).end(),(this.paused||this.config.style.smallPlay||this.config.style.bigPlay)&&(this.controls.toggle(),this.controllers.bar.show())}trackHlsChanges(e,t){if(e){let s=e.currentLevel;e.on(X.LEVEL_SWITCHING,(e,t)=>{this.logger.debug("level switching",{data:t,event:e})}),e.on(X.LEVEL_SWITCHED,(e,t)=>{this.logger.debug("level switched",{data:t,event:e,from:s,to:t.level})});let a=(e,t,r)=>{this.controllers.analytics.customEvent("hls_level_switched",{from:e,segment:r,to:t})};e.on(X.FRAG_LOADED,(e,t)=>{this.controllers.kpis.trackVideoSegmentLoaded({bytes:t.frag.stats.loaded,request:{end:t.frag.stats.loading.end,start:t.frag.stats.loading.start}});try{var{level:r,sn:i}=t.frag;r!==s&&"initSegment"!==i&&(a(s,r,i),this.logger.debug("Frag loaded in different level",{currentLevel:s,nextLevel:r,segmentNumber:i}),s=r)}catch(e){this.logger.error("error dispatching hls_level_switched",{e:e})}})}}videoAsync(){return _c(this,void 0,void 0,function*(){return new Promise((r,i)=>{if(this.video)r(this.video);else{let e=0,t=setInterval(()=>{e++,this.video&&(clearInterval(t),r(this.video)),20{if("triggerEvents"===e)return(e,t)=>t}});e="undefined"!=typeof navigator&&(navigator.language||navigator.userLanguage)||"en";var i,e=/^pt(-\w{,2})?/i.test(e)?"pt":/^es(-\w{,2})?/i.test(e)?"es":"en";return i=e,Ot=i,r.language=e,r.fakeBar&&Lc(r,"fakeBar.color",r.style.background),r.resume&&(r.resume.play=r.resume.play||n("resume.play"),r.resume.replay=r.resume.replay||n("resume.replay"),r.resume.title=r.resume.title||n("resume.title"),Lc(r,"resume.backgroundColor","rgba(0,0,175,0.5)"),Rc(r,"resume.foregroundColor","white")),r.smartAutoPlay.items.forEach(e=>{"default"===e.type&&(Lc(r,"smartAutoPlay.backgroundColor","rgba(0,0,175,0.5)"),Rc(r,"smartAutoPlay.foregroundColor","white"))}),r.smartAutoPlay.items.length&&r.smartAutoPlay.active||(r.style.temporaryBigPlay=!0),null!=(t=r.video)&&t.picStart&&(r.style.temporaryBigPlay=!1),r}function Lc(e,t,r){kc(e,t,"background",r)}function kc(e,t,r,i){var s,t=t.split("."),a=t.pop();a&&(t=t.reduce((e,t)=>e&&"object"==typeof e&&t in e?e[t]:null,e))&&(s=e.style[r]===(null==(s=null==gs?void 0:gs.style)?void 0:s[r])?null:e.style[r],t[a]=t[a]||s||i)}function Rc(e,t,r){kc(e,t,"foreground",r)}var Ic=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{var e;this.player.controllers.blockers.noneBlocker("played")&&null!=(e=this.player.config.video)&&e.picStart&&this.player.controls.play()},this.onBeforeUnload=()=>{this.logger.trace("beforeunload");let e=0,t=setInterval(()=>{this.player.played&&this.video.paused&&(this.player.controls.play(),clearInterval(t)),200<=++e&&clearInterval(t)},50)},this.onInitializedMediaSession=()=>{try{null!=navigator&&navigator.mediaSession&&(navigator.mediaSession.setPositionState({duration:0,playbackRate:1,position:0}),this.setMediaSessionArtwork())}catch(e){this.logger.warn("Failed to setup media metadata",e)}},this.onOffline=()=>{var e;this.logger.debug("HLS offline"),null!=(e=this.hls)&&e.stopLoad(),this.player.dispatchEvent(new CustomEvent(bs.PLAYER_OFFLINE))},this.onOnline=()=>{var e;this.logger.debug("HLS online"),null!=(e=this.hls)&&e.startLoad(),this.player.dispatchEvent(new CustomEvent(bs.PLAYER_ONLINE))}}get currentQualityLevel(){return this._currentLevel}get firstSegmentLoaded(){return this._firstSegmentLoaded}get m3u8(){var e=this.player.config.secure?"m3u8.vturb.net":this.player.config.cdn||"cdn.converteai.net",t=(null==(t=this.settings)?void 0:t.oid)||this.player.config.oid,r=null==(r=this.settings)?void 0:r.id,i=(null==(i=this.settings)?void 0:i.hlsFile)||"main.m3u8";return`https://${e}${this.token}/${t}/${r}/`+i}get qualityLevels(){return this._levels}get token(){if(this.player.config.secure&&!this._token){let e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-+=.@$!*";var t=Array.from({length:32},()=>e[Math.floor(Math.random()*e.length)]).join("");this._token="/t-"+t}return this._token}addEventListener(e,t,r){ms.includes(e)?super.addEventListener(e,t,r):this.video.addEventListener(e,t,r)}connectedCallback(){let e=Object.create(null,{connectedCallback:{get:()=>super.connectedCallback}});return Cc(this,void 0,void 0,function*(){e.connectedCallback.call(this),yield this.updateComplete,yield this.setupHls(),window.addEventListener("offline",this.onOffline),window.addEventListener("online",this.onOnline),window.addEventListener("beforeunload",this.onBeforeUnload),this.player.addEventListener(bs.VIDEO_PLAY,this.onInitializedMediaSession),this.disableIosNowPlayingWidget()})}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("offline",this.onOffline),window.removeEventListener("online",this.onOnline),window.removeEventListener("beforeunload",this.onBeforeUnload),this.player.removeEventListener(bs.VIDEO_PLAY,this.onInitializedMediaSession),this.hls&&(this.hls.destroy(),this.hls=null),this._firstSegmentLoaded=!1}removeEventListener(e,t,r){"mount"===e||e===bs.HLS_FIRST_SEGMENT_LOADED?super.removeEventListener(e,t,r):this.video.removeEventListener(e,t,r)}render(){var e=(null==(t=this.player.config.video)?void 0:t.picStart)&&!(null!=(e=null==(t=this.player.classList)?void 0:t.contains)&&e.call(t,"in-fullscreen")||this.player.interface.fluid)&&this.player.controllers.blockers.noneBlocker("played"),t=s({"-webkit-media-controls-timeline":"none","-webkit-media-controls-timeline-container":"none",cursor:e?"pointer":"default",objectFit:e?"cover":this.objectFit,pointerEvents:e?"auto":"none"});return c``}setMediaSessionArtwork(e){try{null!=navigator&&navigator.mediaSession&&(navigator.mediaSession.metadata=new MediaMetadata({artwork:[{src:e||this.settings.picStart||this.poster||this.settings.poster||""}],title:window.document.title}))}catch(e){this.logger.warn("Failed to setup media artwork",e)}}setQuality(e,t=!1){this.hls&&-1<=e&&e{e.withCredentials=!1}});var e=ia()&&_s()&&ta(this.video);if(Zs.isSupported()&&!e){this.hls.on(Zs.Events.MEDIA_ATTACHED,()=>{var e;this.logger.group("debug","HLS attached to video element").message("Media id "+(null==(e=this.hls.media)?void 0:e.id)).end(),this.hls.loadSource(this.m3u8),this.mount()}),this.hls.on(Zs.Events.MANIFEST_PARSED,(e,t)=>{this.logger.debug("Manifest loaded, found "+t.levels.length+" quality level"),this._levels=t.levels.map(e=>({bitrate:e.bitrate,height:e.height,width:e.width})),this.dispatchEvent(new CustomEvent("levels-loaded",{detail:{levels:this._levels}}))}),this.hls.on(Zs.Events.LEVEL_SWITCHED,(e,t)=>{this._currentLevel=t.level,this.dispatchEvent(new CustomEvent("quality-change",{detail:{auto:this.hls.autoLevelEnabled,level:t.level}}))});let r=(e,t)=>{this.dispatchFirstSegmentLoaded(),this.hls.off(Zs.Events.FRAG_LOADED,r)};this.hls.on(Zs.Events.FRAG_LOADED,r),this.hls.on(Zs.Events.ERROR,(e,t)=>{var r;if(t.fatal)switch(t.type){case Zs.ErrorTypes.MEDIA_ERROR:this.logger.warn("Fatal media error encountered",t),this.handleMediaError(t);break;case Zs.ErrorTypes.NETWORK_ERROR:this.logger.warn("Fatal network error encountered",t),this.handleNetworkError(t);break;default:this.logger.error("Fatal error encountered",t),null!=(r=this.hls)&&r.destroy()}else this.logger.warn("Non-fatal error encountered",t);this.dispatchEvent(new CustomEvent("hls-error",{detail:{details:t.details,fatal:t.fatal,type:t.type}}))}),this.hls.attachMedia(yield this.videoAsync),this.logger.group("info","HLS attached to video element").message("video",this.video).end()}else ta(this.video)?(this.mount(),this.video.src=this.m3u8,this.logger.debug("HLS Native is supported"),this.video.addEventListener("progress",()=>{this.dispatchFirstSegmentLoaded()},{once:!1}),this.video.addEventListener("canplay",()=>{this.dispatchFirstSegmentLoaded()},{once:!0})):this.logger.error("HLS is not supported")})}_onLoadedMetadata(){0{e.mode="hidden"})}_onTrackLoad(e){e=e.target;e.track&&(e.track.mode="hidden")}disableIosNowPlayingWidget(){this.setMediaSessionAction("play",()=>{}),this.setMediaSessionAction("pause",()=>{}),this.setMediaSessionAction("stop",()=>{}),this.setMediaSessionAction("seekto",()=>{}),this.setMediaSessionAction("seekbackward",null),this.setMediaSessionAction("seekforward",null),this.setMediaSessionAction("previoustrack",null),this.setMediaSessionAction("nexttrack",null),this.setMediaSessionAction("skipad",null),this.onInitializedMediaSession()}dispatchFirstSegmentLoaded(){this._firstSegmentLoaded||(this._firstSegmentLoaded=!0,this.dispatchEvent(new CustomEvent(bs.HLS_FIRST_SEGMENT_LOADED,{detail:{hls:this.hls,timestamp:Date.now(),video:this.video}})),this.logger.debug("First video segment loaded"))}handleMediaError(e){this._mediaErrorRecoveryAttempt++,3{var e;null!=(e=this.hls)&&e.recoverMediaError(),setTimeout(()=>{this._mediaErrorRecoveryAttempt=0},5e3)},500)}handleNetworkError(e){this.logger.warn("Attempting to recover from network error in 500ms"),setTimeout(()=>{var e;null!=(e=this.hls)&&e.startLoad()},500)}mount(){this.dispatchEvent(new CustomEvent("mount",{detail:{hls:this.hls,video:this.video}}))}setMediaSessionAction(t,e){try{null!=navigator&&navigator.mediaSession&&navigator.mediaSession.setActionHandler(t,e)}catch(e){this.logger.warn("Failed to setup media action: "+t,e)}}}),k=(L.componentName="HlsVideo",L.shadowRootOptions={mode:sn("closed")},L.styles=e` :host { --style-font-family: "Arial", sans-serif; width: 100%; height: 100%; display: block; } video { width: 100%; height: 100%; object-position: center; position: absolute; top: 0; left: 0; pointer-events: none; z-index: 9999; } video::cue { visibility: hidden; } `,Ic([Is()],L.prototype,"autoplay",void 0),Ic([Is()],L.prototype,"controls",void 0),Ic([Is()],L.prototype,"muted",void 0),Ic([Is()],L.prototype,"objectFit",void 0),Ic([Is()],L.prototype,"playsinline",void 0),Ic([Is()],L.prototype,"poster",void 0),Ic([Is()],L.prototype,"preload",void 0),Ic([Is()],L.prototype,"settings",void 0),Ic([Is()],L.prototype,"subtitles",void 0),Ic([Ps("video")],L.prototype,"video",void 0),Ic([on("video")],L.prototype,"videoAsync",void 0),L=Ic([ws("hls-video")],L),function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3{var t=Number(this.input.value);this.value=t>this.max?this.max:t
`}updated(e){e.has("value")&&this.updateSlider()}updateSlider(){var e,t=this.min,r=this.max,r=(this.value-t)/(r-t),t=this.thumb.offsetWidth;this.vertical?(e=(this.slider.offsetHeight-t)*(1-r)+"px",this.style.setProperty("--slider-value-width",100*r+"%"),this.style.setProperty("--thumb-offset",e)):(e=(this.slider.offsetWidth-t)*r+"px",this.style.setProperty("--slider-value-width",100*r+"%"),this.style.setProperty("--thumb-offset",e)),this.dispatchEvent(new Event("change"))}};R.styles=e` :host { --slider-background: #767676; --slider-height: var(--volume-slider-height, 0.125em); /* 2px */ --slider-radius: var(--slider-height); --slider-value-color: #ff6200; --slider-value-width: 0; --slider-value-height: 0; --thumb-color: #adadad; --thumb-diameter: 0.9375em; /* 15px */ --thumb-offset: 0; display: inline-block; } .range-container { position: relative; width: 100%; height: 100%; display: flex; justify-content: flex-start; align-items: center; } .range-slider, .range-slider-value { border-radius: var(--slider-radius); position: absolute; } .range-slider { background: var(--slider-background); width: 100%; height: var(--slider-height); } .range-slider-value { background: var(--slider-value-color); width: var(--slider-value-width); height: var(--slider-height); } :host([vertical]) .range-container { height: 100%; flex-direction: column; } :host([vertical]) .range-slider { width: var(--slider-height); height: 100%; } :host([vertical]) .range-slider-value { width: var(--slider-height); height: var(--slider-value-width); bottom: 0; } :host([vertical]) input { writing-mode: vertical-rl; direction: rtl; width: 100%; vertical-align: bottom; } .range-thumb { background: var(--thumb-color); border-radius: 50%; height: var(--thumb-diameter); position: absolute; width: var(--thumb-diameter); transform: translateX(var(--thumb-offset)); } :host([vertical]) .range-thumb { transform: translateY(var(--thumb-offset)); } input { display: inline-block; height: 100%; width: 100%; margin: 0; opacity: 0; position: relative; cursor: pointer; } :host([disabled]) { --slider-background: #d9d9d9; --slider-value-color: #a8a8a8; --thumb-color: #f0f0f0; } `,k([Is({reflect:!0,type:Boolean})],R.prototype,"disabled",void 0),k([Is({type:Number})],R.prototype,"max",void 0),k([Is({type:Number})],R.prototype,"min",void 0),k([Is({type:Number})],R.prototype,"step",void 0),k([Is({type:Number})],R.prototype,"value",void 0),k([Is({reflect:!0,type:Boolean})],R.prototype,"vertical",void 0),k([Ps("input")],R.prototype,"input",void 0),k([Ps(".range-slider")],R.prototype,"slider",void 0),k([Ps(".range-thumb")],R.prototype,"thumb",void 0),R=k([ws("range-slider")],R);var Pc,Dc,js,xc,Oc,Mc,Fc,Nc,Uc,Ss=e`:host{height:auto;display:block;z-index:1;font-size:16px}:host,div[id^=vturb-callaction-container-]{--player-vertical-width:400px;--base-transition-duration:0.3s;--base-transition-delay:0s;--base-transition-cubic:cubic-bezier(0.25, 0.1, 0.25, 1);--base-transition:var(--base-transition-duration) var(--base-transition-cubic) var(--base-transition-delay);--base-linear-transition:0.2s linear;--style-background:#000;--style-foreground:#fff;--style-font-family:Roboto,Helvetica,Arial,Tahoma,sans-serif;--style-background-opacity:rgba(0, 0, 0, 0.7);--style-hover-background:rgba(255, 255, 255, .1);--style-dark-hover-background:rgba(0, 0, 0, .85);--fakebar-height:0;--control-index:5;--control-padding:0.625em;--control-font-size:1.5em;--control-height:6.125em;--control-translate-y:100%;--control-gap-vertical:0.875em;--control-gap-horizontal:0.625em;--control-border-radius:0.3em;--control-button-size:1.5em;--control-mobile-button-padding:1em;--control-mobile-button-featured-padding:1.5em;--control-mobile-button-icon-size:2em;--control-mobile-button-featured-icon-size:3em;--progressbar-background-color:rgba(255, 255, 255, 0.2);--progressbar-buffer-color:rgba(255, 255, 255, 0.4);--progressbar-handle-color:var(--style-foreground, #ffffff);--progressbar-height:0.25em;--progressbar-handle-size:0.75em;--headline-font-family:inherit;--headline-margin-bottom:1.875em;--resume-background-color:var(--style-background);--resume-blur:0.3125em;--resume-font-size:1em;--resume-foreground-color:var(--style-foreground);--resume-index:10;--resume-line-height:1.3;--resume-min-width:180px;--thumbsniper-background-color:var(--style-background);--thumbsniper-image-fit:contain;--thumbsniper-index:100;--thumbsniper-button-border-radius:5px;--thumbsniper-button-color:var(--style-foreground);--thumbsniper-button-margin:1.25em;--thumbsniper-button-font-size:1em;--thumbsniper-button-line-height:1.2;--thumbsniper-button-font-weight:700;--thumbsniper-button-size-lg:1.5em;--thumbsniper-button-size-md:1.25em;--thumbsniper-button-size-sm:1em;--callaction-background-color:var(--style-background);--callaction-index:100;--callaction-button-border-radius:5px;--callaction-button-color:var(--style-foreground);--callaction-button-margin:1.25em;--callaction-button-font-size:1em;--callaction-button-line-height:1.2;--callaction-button-font-weight:700;--callaction-button-size-lg:1.5em;--callaction-button-size-md:1.25em;--callaction-button-size-sm:1em;--callaction-outside-margin:1.25em;--callaction-button-display:inline-block;--volume-slider-width:3.75em;--volume-slider-height:0.25em;--volume-slider-diameter:0.9375em;--player-border-radius:none;--player-box-shadow:none;font-family:var(--style-font-family,sans-serif);color:var(--style-foreground);--bezel-display:initial;--bezel-color:#ffffff;--bezel-animation-duration:0.5s;--bezel-animation-timing:linear;--bezel-scale-start:1;--bezel-scale-end:2;--bezel-opacity-start:1;--bezel-opacity-end:0;--bezel-icon-size:5em;--bezel-icon-padding:1.25em;--bezel-background-color:rgba(0, 0, 0, 0.5);--bezel-border-radius:50%;--bezel-icon-fill:#ffffff;--bezel-loading-min-width:100px;--bezel-loading-width:45%;--bezel-loading-max-width:200px;--bigplay-base-size:10em;--bigplay-border-radius:5em;--bigplay-background:transparent;--bigplay-opacity:0.9;--bigplay-padding-y:1.6em;--bigplay-padding-x:0.8em;--bigplay-size-360:6.5em;--bigplay-size-480:5.75em;--bigplay-size-550:7.5em;--subtitle-max-width:75%;--subtitle-max-width-small:85%;--subtitle-text-shadow:0.5px 0.5px 0.5px rgba(0, 0, 0, 0.8);--subtitle-padding:0.25em 0.4em;--subtitle-line-height:1.675;--subtitle-font-weight:500;--subtitle-letter-spacing:0.03em}:host .m-w-360,div[id^=vturb-callaction-container-] .m-w-360{font-size:10px}:host .m-w-480,div[id^=vturb-callaction-container-] .m-w-480{font-size:11px}:host .m-w-550,div[id^=vturb-callaction-container-] .m-w-550{font-size:12px}:host .m-w-768,div[id^=vturb-callaction-container-] .m-w-768{font-size:13px}:host .m-w-1024,div[id^=vturb-callaction-container-] .m-w-1024{font-size:14px}:host .m-w-1280,div[id^=vturb-callaction-container-] .m-w-1280{font-size:16px}:host .m-w-1440,div[id^=vturb-callaction-container-] .m-w-1440{font-size:16.5px}:host .m-w-1600,div[id^=vturb-callaction-container-] .m-w-1600{font-size:17px}:host .m-w-1920,div[id^=vturb-callaction-container-] .m-w-1920{font-size:18px}.no-pointer,.no-pointer *{pointer-events:none}.pointer,.pointer *{pointer-events:auto}vturb-headline{font-family:var(--headline-font-family,inherit)}vturb-player{height:auto;display:block}`,ys=function(e,t,r,i){var s,a=arguments.length,n=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;0<=o;o--)(s=e[o])&&(n=(a<3?s(n):3Bc(this,void 0,void 0,function*(){var e,t,r=zs(this,Dc,"f").group("info","Player: group setup").message("config",s).message("current config",Object.assign({},this.config)).message("default config",Object.assign({},wc));try{if(this.config=wc(Sc(Sc(wc,this.config),s)),this.customConfig)try{var i=JSON.parse(this.customConfig);this.config=Sc(this.config,i)}catch(e){zs(this,Dc,"f").error("Failed to parse customConfig JSON",e)}r.message("result config",Object.assign({},this.config)).end(),zs(this,Mc,"f").call(this),this.requestUpdate(),null!=(e=zs(this,js,"f"))&&e.deepUpdate(),zs(this,Dc,"f").debug("config updated",bs.PLAYER_CONFIG_UPDATED),this.dispatchEvent(new CustomEvent(bs.PLAYER_CONFIG_UPDATED,{detail:{config:this.config}})),null!=(t=zs(this,js,"f"))&&t.dispatchEvent(new CustomEvent(bs.PLAYER_CONFIG_UPDATED,{detail:{config:this.config,player:zs(this,js,"f")}}))}catch(e){zs(this,Dc,"f").error("Failed to setup player",e)}}),this.injectUrlUpdater=e=>Bc(this,void 0,void 0,function*(){if("function"!=typeof e)return zs(this,Dc,"f").warn("injectUrlUpdater: updater is not a function");yield zs(this,Pc,"m",Oc).call(this),zs(this,js,"f").dispatchEvent(new CustomEvent(bs.URL_INJECTION,{detail:{priority:Js.MEDIUM,updater:e}}))}),this.urlUpdater=e=>Bc(this,void 0,void 0,function*(){return yield zs(this,Pc,"m",Oc).call(this),zs(this,js,"f").urlUpdater(e)}),Mc.set(this,()=>{this.config.video.widththis.hasPreloadSlot&&zs(this,Pc,"m",Nc).call(this,bs.PRELOAD_EXPIRED),Uc.MAX_PRELOAD_SLOT_TIME),"f");this._setup&&this.setup(this._setup)}disconnectedCallback(){window.removeEventListener("resize",zs(this,Mc,"f")),clearTimeout(zs(this,xc,"f"))}displayHiddenElements(e,i,s={}){var t=()=>{var e,t,r;t=this.doc,r=s.display,i.forEach(e=>{t.querySelectorAll(e).forEach(e=>{e.style.display=null!=r?r:"block"})}),s.persist&&zs(this,js,"f").store.set("displayHiddenElements-"+this.config.id,!0),null!=(e=s.callback)&&e.call(this)};zs(this,js,"f").store.get("displayHiddenElements-"+this.config.id,!1)?t():this.onTime(e,t,{once:!0})}fullscreen(e){var t;"on"===e?null!=(t=zs(this,js,"f"))&&t.controllers.fullscreen.active():"off"===e?null!=(t=zs(this,js,"f"))&&t.controllers.fullscreen.cancel():null!=(e=zs(this,js,"f"))&&e.controllers.fullscreen.toggle()}mute(){zs(this,js,"f")&&zs(this,js,"f").controls.mute()}onTime(e,t){return Bc(this,arguments,void 0,function*(t,r,i={}){yield zs(this,Pc,"m",Oc).call(this);let s=e=>{e.detail.time>=t&&(r.call(this),i.once)&&this.removeEventListener(bs.VIDEO_TIMEUPDATE,s)};this.addEventListener(bs.VIDEO_TIMEUPDATE,s)})}pause(){var e;null!=(e=zs(this,js,"f"))&&e.controls.pause()}play(){var e;return null==(e=zs(this,js,"f"))?void 0:e.controls.play()}reload(){return Bc(this,void 0,void 0,function*(){var e=this.config.oid;this.setup({oid:void 0}),yield this.updateComplete,$c(this,js,void 0,"f"),this.setup({oid:e})})}render(){var e;return null!=(e=this.config)&&e.oid?(e=this.hasPreloadSlot?"display: none;":"",c`${Ds(this.hasPreloadSlot,()=>c``)}`):c``}seek(e){return Bc(this,void 0,void 0,function*(){yield zs(this,Pc,"m",Oc).call(this),zs(this,js,"f").controls.seek(e)})}setVolume(e){var t;if(e<0||100{this.addEventListener(bs.PLAYER_READY,e)})},Fc=function(e){if(!zs(this,js,"f"))try{$c(this,js,e.target,"f");let r={config:this.config,player:this};[bs.VIDEO_READY,bs.LICENSE_DENIED].forEach(e=>{zs(this,js,"f").addEventListener(e,()=>{this.hasPreloadSlot&&zs(this,Pc,"m",Nc).call(this,bs.PRELOAD_REMOVED)})}),zs(this,js,"f").addEventListener(bs.PLAYER_READY,()=>{this.dispatchEvent(new CustomEvent(bs.PLAYER_READY,{detail:r})),null!=document&&document.dispatchEvent(new CustomEvent(bs.PLAYER_READY,{detail:r}))}),zs(this,js,"f").addEventListener(bs.VIDEO_TIMEUPDATE,e=>{this.dispatchEvent(new CustomEvent(bs.VIDEO_TIMEUPDATE,{detail:Object.assign(Object.assign({},r),{time:e.detail.time})}))}),[bs.VIDEO_PLAY,bs.VIDEO_PAUSE,bs.VIDEO_ENDED,bs.FULLSCREEN_ENTER,bs.FULLSCREEN_EXIT,bs.PITCH_TIME,bs.CALLACTION_ELEMENTS_CHANGED,bs.SMARTAUTOPLAY_ACTIVE,bs.SMARTAUTOPLAY_INACTIVE,bs.SMARTAUTOPLAY_VIDEO_READY].forEach(t=>{zs(this,js,"f").addEventListener(t,e=>{this.dispatchEvent(new CustomEvent(t,{detail:r}))})})}catch(e){zs(this,Dc,"f").error("Failed to add player event listeners",{error:e})}},Nc=function(e){this.dispatchEvent(new CustomEvent(e,{detail:{config:this.config,player:this}})),this.hasPreloadSlot=!1},I.MAX_PRELOAD_SLOT_TIME=2500,I.shadowRootOptions={mode:sn()},I.styles=[Ss,w.styles],ys([Is({type:Object})],I.prototype,"config",void 0),ys([Is({attribute:"custom-config",reflect:!0,type:String})],I.prototype,"customConfig",void 0),ys([Is({reflect:!0,type:Boolean})],I.prototype,"fluid",void 0),ys([Is({reflect:!0,type:Boolean})],I.prototype,"hasPreloadSlot",void 0),ys([Is({reflect:!0,type:Boolean})],I.prototype,"pauseOneTouch",void 0),ys([Is({reflect:!0,type:String,attribute:"original-id"})],I.prototype,"originalId",void 0),I=Uc=ys([ws("vturb-smartplayer")],I)}})(); //# sourceMappingURL=smartplayer.js.map